Model View Controller Entwurfsmuster

MVC – Das Konzept für einen flexiblen Systementwurf

Einleitung

Das Model-View-Controller (MVC) Konzept spiegelt den grundsätzlichen Aufbau einer Softwarearchitektur wieder. Durch drei voneinander logisch getrennten Ebenen, vereinfacht es sowohl die programmiertechnische Erstellung von Softwarelösungen, als auch deren spätere Weiterentwicklung, sowie Wiederverwendbarkeit. Heutzutage ist dieses Architekturmuster bei komplexen Softwareprojekten, aufgrund seiner maßgeblichen Vorteile, nicht mehr wegzudenken. Aus diesem Grund schauen wir uns im Folgenden die einzelnen Ebenen einmal genauer an.

Model (Modell)

Das sogenannte Model beinhaltet zum einen die Daten in dem Softwaresystem, als auch die für sich selbst geltende Geschäftslogik. Dies bedeutet, dass das Model in Verbindung mit der Datenbank steht, welche die Daten der Software bereitstellt, aber auch die Verarbeitung von eigenen Objekten selber vornehmen kann. Das Model ist grundsätzlich von den anderen beiden Ebenen (View und Controller) unabhängig, da es von ihnen nur angesprochen wird und selbst nur die Daten zur Verfügung stellt.

View (Präsentation)

Die View spiegelt die Sicht des Benutzers wieder. Dieser bekommt von der View die Daten aus dem Model in einer Benutzeroberfläche präsentiert und kann entsprechende Aktionen ausführen, welche dann von der View entgegengenommen werden können. Daher steht die View in enger Verbindung mit dem Model. Da die Aktionen des Benutzers weiter an den Controller geleitet werden, besteht auch eine enge Verbindung zu dem Controller. Dieser ist dann für die weitere Verarbeitung zuständig.

Controller (Steuerung)

Der Controller beinhaltet die technische Logik. Hier befinden sich all jene Methoden, welche für die Verarbeitung der Aktionen des Benutzers zuständig sind. Der Controller verwaltet auch die Views und beschließt wann dem Benutzer welche View angezeigt wird. Er nimmt die Aktionen einer View entgegen und wertet diese aus. Anschließend aktualisiert er die erhaltenen Daten entsprechend für das Model und leitet die weiterführende View ein.

Fazit

Abschließend lassen sich einige Vorteile des Architekturmusters zusammenfassen. Zum einen können sich Programmierer, durch die klar getrennten Ebenen, besser im Programmiercode zurechtfinden. Dies erhöht die Schnelligkeit bei der Bereinigung von Fehlern in der Software, bietet aber auch gleichzeitig die Möglichkeit leichter neue Features einzubinden. Auch Wartungen lassen sich besser vollziehen, da der modulare Aufbau das Abschalten einzelner Komponenten möglich macht, ohne das System im Ganzen dabei zu beeinflussen. Aus diesen Gründen hat sich das Model-View-Controller Konzept nun bereits seit Jahren bewährt und ist  somit ein grundlegender Baustein einer effizienten Softwarearchitektur.

0 Kommentare

Dein Kommentar

Want to join the discussion?
Feel free to contribute!

Schreibe einen Kommentar