23.09.2013 Aufrufe

Objektorientierte Software-Entwicklung mit Smalltalk

Objektorientierte Software-Entwicklung mit Smalltalk

Objektorientierte Software-Entwicklung mit Smalltalk

MEHR ANZEIGEN
WENIGER ANZEIGEN

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

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!