03.11.2013 Aufrufe

SMALLTALK K1ex127-.45ex51275ahler/Bothner

SMALLTALK K1ex127-.45ex51275ahler/Bothner

SMALLTALK K1ex127-.45ex51275ahler/Bothner

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

52 3 Durchführung des Lösungsplans<br />

ˆ In einem Block sind eine oder mehrere Block-Anforderungen enthalten, die<br />

paarweise durch einen Punkt zu trennen sind. Sämtliche Block-Anforderungen<br />

werden in derjenigen Reihenfolge ausgeführt, in der sie innerhalb des Blockes<br />

eingetragen sind.<br />

Sofern innerhalb einer Block-Anforderung Platzhalter – wie etwa in unserem<br />

Beispiel “einObjekt” – als Stellvertreter für Argumente von Messages benötigt<br />

werden, die erst zum Zeitpunkt der Ausführung des Blockes konkret vorliegen,<br />

müssen sie als Block-Parameter zu Beginn des Blockes vereinbart sein. Der jeweils<br />

für einen Block-Parameter verwendete Name, der die Regeln für die<br />

Namensvergabe von Instanz-Variablen erfüllen muß, ist durch einen Doppelpunkt<br />

“:” einzuleiten und von der 1. Block-Anforderung durch den senkrechten<br />

Strich “|” abzugrenzen.<br />

Hinweis: Nähere Angaben zur Ausführung von Blöcken machen wir im Abschnitt<br />

6.2.<br />

Die Basis-Methode “do:”<br />

In der obigen Anforderung<br />

werteBag do:[:einObjekt|Transcript cr.Transcript show:einObjekt]<br />

wird die Keyword-Message “do:” verwendet. Hierdurch wird bewirkt, daß das Empfänger-Objekt<br />

die Basis-Methode “do:” zur Ausführung bringt.<br />

Bei der Ausführung dieser Methode werden die Block-Anforderungen desjenigen<br />

Blockes, der als Argument hinter dem Message-Selektor “do:” aufgeführt ist, wiederholt<br />

bearbeitet. Bei jedem einzelnen Ausführungs-Schritt steht der Block-Parameter<br />

wie z.B. “einObjekt” – als Platzhalter – stellvertretend für jedes einzelne Objekt,<br />

das Bestandteil des Empfänger-Objektes ist. Die Ausführung der Methode “do:” ist<br />

beendet, wenn die Block-Anforderungen für alle gesammelten Objekte bearbeitet<br />

wurden.<br />

Durch den Aufbau der Anforderung<br />

werteBag do:[:einObjekt|Transcript cr.Transcript show:einObjekt]<br />

ist erkennbar, daß der Strukturblock (4) durch die Block-Anforderung<br />

Transcript cr<br />

und der Strukturblock (5) durch die Block-Anforderung<br />

Transcript show: einObjekt<br />

umgesetzt worden sind.<br />

Welche Punktwerte bei der Ausführung von<br />

werteBag do:[:einObjekt|Transcript cr.Transcript show:einObjekt]

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!