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.

8.3 Pool-Dictionary-Variablen 167<br />

ZaehlerPoolDictionary at: #ZaehlerPool put: nil<br />

die Pseudovariable “nil” als Objekt zu. Dadurch soll dokumentiert werden, daß<br />

bislang keine Instanziierung eines Erfassungsprozesses durchgeführt wurde.<br />

Hinweis: Sofern erstmalig eine Instanziierung vorgenommen wird, soll dies dadurch dokumentiert<br />

werden, daß der dem Key “#ZaehlerPool” zugeordnete Value “nil” durch die<br />

ganze Zahl “0” ersetzt wird.<br />

Nachdem wir im Workspace-Fenster die Anforderungen<br />

Smalltalk at: #ZaehlerPoolDictionary put: Dictionary new.<br />

ZaehlerPoolDictionary at: #ZaehlerPool put: nil<br />

eingetragen und zur Ausführung gebracht haben, vereinbaren wir die Klasse “ZaehlerInWerteErfassung”<br />

als Unterklasse von “InWerteErfassung”, indem wir innerhalb<br />

des Klassen-Hierarchie-Browser-Fensters die folgende Vereinbarung treffen:<br />

InWerteErfassung subclass: #ZaehlerInWerteErfassung<br />

instanceVariableNames: ’’<br />

classVariableNames: ’’<br />

poolDictionaries: ’ZaehlerPoolDictionary’<br />

Genauso gehen wir bei der Vereinbarung der Klasse “ZaehlerOrWerteErfassung”<br />

vor:<br />

OrWerteErfassung subclass: #ZaehlerOrWerteErfassung<br />

instanceVariableNames: ’’<br />

classVariableNames: ’’<br />

poolDictionaries: ’ZaehlerPoolDictionary’<br />

Durch diese Klassen-Vereinbarungen ist das von uns eingerichtete Dictionary “ZaehlerPoolDictionary”<br />

als Pool-Dictionary-Variable in beiden Klassen festgelegt.<br />

Innerhalb jeder dieser beiden Klassen verabreden wir die Klassen-Methode “new”<br />

in der folgenden Form:<br />

new<br />

|varWerteErfassung|<br />

varWerteErfassung := super new.<br />

varWerteErfassung initZaehlerPool.<br />

∧ varWerteErfassung<br />

Hierdurch ist bestimmt, daß bei der Instanz der Klasse “ZaehlerInWerteErfassung”<br />

bzw. der Klasse “ZaehlerOrWerteErfassung” stets die Instanz-Methode “initZaehlerPool”<br />

zur Ausführung gelangt.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!