Java Reference
In-Depth Information
:Model
:View1
:Controller
:View2
anmelden (this)
anmelden()
anmelden (this)
anmelden()
Datenänderung
speichereDaten
(geaenderteDaten
)
(1)
(3)
speichereDaten()
(2)
benachrichtigen()
aktualisieren (this)
gibDaten()
gibDaten() : daten
aktualisieren()
(4)
aktualisieren (this)
(5)
gibDaten()
gibDaten() : daten
aktualisieren ()
Bild 5-40 Sequenzdiagramm Aktualisierung des Model
114
Im ersten Schritt in Bild 5-40 melden sich zwei Views mit der Methode
anmelden()
bei der Model-Komponente an.
Der weitere Ablauf in Bild 5-40 veranschaulicht einen Aktualisierungsvorgang. Die
Kommunikation zwischen den MVC-Komponenten ist dabei wie folgt:
(1) Der Benutzer gibt Daten an der View ein. Die View leitet diese Daten an den Con-
troller weiter. Dies ist hier vereinfacht dargestellt als
Datenänderung
für den
Controller.
(2) Der Controller übersetzt diese Daten in einen Methodenaufruf für das Model.
Hierzu bestimmt der Controller, welche Methoden des Model aufgerufen werden
müssen. Werden Parameter benötigt, so werden sie vom Controller ebenfalls
übergeben. Dieser Vorgang wird in Bild 5-40 durch den Aufruf der Methode
speichereDaten (geaenderteDaten)
repräsentiert.
(3) Das Model ändert innerhalb der Methode
speichereDaten()
seine Daten und
ruft die Methode
benachrichtigen()
auf.
(4) Das Model benachrichtigt durch Aufruf der Methode
aktualisieren()
innerhalb
der Methode
benachrichtigen()
seine zugeordneten Views darüber, dass sich
seine Daten geändert haben.
(5) Die benachrichtigten Views holen die geänderten Daten durch den Aufruf der
Methode
gibDaten()
beim Model ab.
(6) Die neuen Grafiken werden auf dem Bildschirm ausgegeben. Diese Aktivität ist
nicht mehr dargestellt.
114
Die Nummerierung in Klammern bezieht sich auf die noch kommende Erklärung und ist nicht UML-
konform.
Search WWH ::
Custom Search