Objektorientierte Software-Entwicklung mit Smalltalk
Objektorientierte Software-Entwicklung mit Smalltalk
Objektorientierte Software-Entwicklung mit Smalltalk
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Beispiel: CommentBrowser (Object Reference)<br />
• horizontale undvertikale Anordnung<br />
Aufrufvarianten: CommentBrowser2 open.<br />
CommentBrowser2 openVertical.<br />
Michael Prasse 125 Tomcat Computer GmbH<br />
Austauschbare Domänenmodelle<br />
different<br />
domain<br />
models<br />
Reuse:<br />
application<br />
model and<br />
canvas<br />
([VW 1992], S. 71)<br />
Michael Prasse 127 Tomcat Computer GmbH<br />
CommentBrowser windowSpec-Methoden<br />
• CommentBrowser2 (ListBrowser2) definiert zwei windowSpec-Methoden<br />
• Je nach gewünschtem Fensterlayout Einsatz der entsprechenden windowSpec<br />
openVerticalListBrowserOn: aCollection label:<br />
labelString initialSelection:sel<br />
"Create andschedule a browser on the collection<br />
of messages aCollection. "<br />
^self openListBrowserOn: aCollection<br />
label: labelString<br />
initialSelection:sel<br />
interface: #windowSpec2<br />
openListBrowserOn: aCollection label:<br />
labelString initialSelection:sel<br />
"Create andschedule a browser on the collection<br />
of messages aCollection. "<br />
^self openListBrowserOn: aCollection<br />
label: labelString<br />
initialSelection:sel<br />
interface: #windowSpec<br />
Michael Prasse 126 Tomcat Computer GmbH<br />
Beispiel: SimpleDialog<br />
SimpleDialog new<br />
choose: 'Wähle eine Zahl'<br />
labels: (Array with: 'Eins' with: 'Zwei' with: 'Drei')<br />
values: #(1 2 3)<br />
default: 1.<br />
Generell:<br />
• einfaches Austauschen des Domänenmodells<br />
• Voraussetzung: gleiches Methodenprotokoll bezüglich Applikationsmodell<br />
• generische Benutzungsschnittstellenkomponenten (Listen, Dialoge ...)<br />
• Abstraktion von den konkret angezeigten Daten<br />
☛ Trennung von Modell und Darstellung (MVC)<br />
SimpleDialog new<br />
choose: 'Are you tired yet?'<br />
labels: (Array with: 'absolutely' with: 'sort of'<br />
with: 'not really')<br />
values: #(#yes #maybe #no)<br />
default: #maybe.<br />
Michael Prasse 128 Tomcat Computer GmbH