Model-View-Controller in Java
Inhaltsangabe
Model-View-Controller
- Architekturmuster
- Aufteilung von Softwaresystemen in drei Einheiten
- Ziel: flexibles Programmdesign
- spätere Änderung oder Erweiterung einfach zu realisieren
- Wiederverwendbarkeit der einzelnen Komponenten ermöglichen
- bei großen Anwendungen
- Übersicht und Ordnung durch Reduzierung der Komplexität
Architekturmuster
- 3 Komponenten
- Abhängigkeit unterschiedlich, je nach Realisierung
- Dabei: Trennung der Datenhaltung von Datendarstellung
MVC-Modell
|
|
|
![]() |
||
MVC-Beispiel
Model
- wird zuerst implementiert
- enthält Daten und Kernfunktionalität der Anwendung
- ist unabhängig vom View und Controller
- zusätzliche Aufgaben:
- Das Model kennt alle View und Controller
- informiert diese über Änderung
View
- präsentieren dem Anwender Informationen
- Reaktion auf Änderungen im Model
- Bei Initialisierung werden alle Views mit
Model assoziiert (Beziehung hergestellt) - Erzeugung Controller-Komponente (1:1-Beziehung)
Controller
- Eingabeschnittstelle zwischen Benutzer und Model
- interpretiert die empfangenen Eingabedaten und übergibt sie dem Model
- meist auf ein spezielles View zugeschnitten
- Oft fasst man View und Controller zusammen zu einer Klasse
Vor- und Nachteile
| Vorteile | Nachteile |
|
|
Fazit
- leistungsstarkes Instrument zur Implementierung von Benutzeroberflächen
- vielfache Anwendbarkeit
- ABER:
- Muss vorher prüfen ob MVC dazu geeignet ist oder nicht
- Implementierung kann sehr komplex werden
GUI-Umsetzung
GUI
= Graphical User Interface- Programme ereignisgesteuert
- Aktionen des Benutzers erzeugen Ereignisse
- (Tastaturanschläge, Mausklicks, Mausbewegungen etc.)
- Problem:
- GUI kann nicht vorhersehen, was Benutzer tun wird.
- Folge:
- GUI wartet auf Aktionen des Benutzers
- Komponenten erzeugen Ereignisse
- (Maus, Tastatur,...)
- Muss vorher prüfen ob MVC dazu geeignet ist oder nicht
- Implementierung kann sehr komplex werden
Aufbau eines GUI
| Fenster - Frame | ![]() |
| Untergrund auf den man etwas platzieren kann – Panel |
![]() |
| Diverse Dinge wie Buttons, Textfelder,..... welche auf dem Panel plaziert werden |
![]() |
Prinzip
- zuerst Frame erstellen
- Panel erstellen
- diverse Buttons usw. auf Panel legen bzw. neue Panels darauf legen
- Panel auf Frame legen
- Frame anzeigen
Beispiele
Beispiel: "Hallo Welt"
Beispiel: "Mehrwertssteuer"
Datein
Die dazugehörige Powerpoint-Präsentation (In der Powerpoint 2007 und 98-2003 Version) schicke ich auf Anfrage per Email.
© Artur Leinweber 2009





