Java Reference
In-Depth Information
1: Eingaben des
Benutzers
3: [Änderung der
Ansicht]
Controller
View
2: Änderung der
Daten
4: Neue Daten
vorhanden
5: Anforderung
neuer Daten
Model
Bild 5-37 Interaktionen der Komponenten der MVC-Architektur
Die Interaktionen dieser Komponenten werden im Folgenden entsprechend der Num-
merierung in Bild 5-37 genauer beschrieben:
(1) Der Benutzer interagiert mit der View. Wenn der Benutzer eine Eingabe in der View
macht (z. B. auf einen Button klickt), leitet die View dieses Ereignis an den zuge-
ordneten Controller weiter.
(2) Der Controller hat die Aufgabe, dieses Ereignis zu interpretieren und entsprechend
zu handeln. Er veranlasst eine Änderung der Daten im Model.
(3) Eventuell wird auch die View vom Controller veranlasst, ihren Zustand zu verän-
dern (z. B. ein Eingabefeld auszublenden).
(4) Das Model meldet nach einer Änderung seiner Daten an alle bei ihm zur Aktualisie-
rung angemeldeten Views, dass sich die Daten des Model geändert haben.
(5) Die Views holen die neuen Daten vom Model ab und aktualisieren ihre Darstellung.
Eine View ist sozusagen ein Fenster zum Model.
Die beiden Komponenten View und Controller sind abhängig
vom Model. Sie kennen den Aufbau der Daten des Model. Eine
View muss Informationen über die Daten des Model besitzen, um
diese darstellen zu können. Diese Informationen werden auch
vom Controller benötigt, damit er die Daten des Model ändern
kann.
Zwischen Controller und View besteht eine wechselseitige Ab-
hängigkeit 113 , weil zum einen die View den Controller über Ein-
gaben des Benutzers informieren muss und weil zum anderen der
Controller den Zustand einer View bestimmt und die Ansicht einer
View ändern kann.
113 Diese wechselseitige Abhängigkeit ist auch der Grund dafür, dass Controller und View oftmals ge-
meinsam zu einer View-Controller-Komponente zusammengefasst werden. In Swing wird eine sol-
che Komponente als Delegate bezeichnet.
Search WWH ::




Custom Search