Das Konzept des Model View Controller wird im Bereich moderner Softwareentwicklung eingesetzt.
Das MVC-Konzept ist ein Entwurfsmuster für Softwarearchitektur. Der Softwarearchitektur-Ansatz des Model View Controllers besteht in der strikten Aufgabenverteilung für Anwendungen.
Im Model-View-Controller Konzept ist die Trennung von Logik, Datenquelle und Visualisierung konsequent realisiert.
Rollen und Aufgaben im Model View Controller Konzept
Das Model übernimmt die Rolle der Datenquelle; wobei das Modell die Daten unabhängig von Typ und Art der Datenbank bereitstellt.
Die View zeigt diese Daten und visualisiert die digitalen Informationen in passender Art und Weise. Somit bestimmt der View im Model View Controller Konzept den »Look & Feel« der Software. Dabei ist die View in der Anzeige der Daten unbeeinflusst vom Model.
Der Controller ist die Logik der Anwendung. Die Aufgabe des Controllers ist es jede Interaktion mit dem Benutzer zu regeln. Somit bestimmt der Controller das Verhalten der Komponenten. Jede Veränderung von Daten meldet der Controller direkt dem Model und das Model wiederum informiert die View die Datenaktualisierung zu visualisieren.
Vorteile der Model View Controller Architektur
Der Vorteil der Aufgabenverteilung einer Model View Controller Architektur ist zum einen die Aufteilung in logische, unabhängige Klassen. Damit ermöglicht eine Model View Controller Architektur agile Entwicklung, denn es besteht jederzeit die Option, jede der drei Komponenten auszutauschen.
Da die Visualisierung ausschließlich über den View geregelt ist, besteht folglich die Möglichkeit das Look & Feel einer Softwareanwendung zur Laufzeit auszutauschen.
Damit ermöglicht eine Model-View-Controller Architektur den gezielten Einsatz von Spezialisten für die einzelnen Teilaufgaben:
Während der Designer als Spezialist für das optimale Look-and-Feel die Usability einer Software- oder Webanwendung optimiert, verantwortet der Datenbankexperte den schnellen Zugriff auf die Datenbank und eine sichere Datenspeicherung. Der Softwarearchitekt ist für die optimale Modellierung der Businesslogik – die Softwarearchitektur – zuständig.
Zusammenfassung der Fakten des Model-View-Controller-Konzepts
- Trennung von Logik, Datenquelle und Visualisierung
- logisch, unabhängige Klassen
- ermöglicht agile Entwicklung
- gezielter Einsatz von Experten für Design, Datenbank und Softwarearchitektur
- Mehr als 90% aller Frameworks implementieren das Multi View Controller Konzept.