Definition

Model View Controller (MVC)

In der objektorientierten Programmierung (OOP) ist Model View Controller (MVC) der Name einer Methode oder eines Designmusters, um die Benutzeroberfläche erfolgreich und effizient auf die zugrunde liegenden Datenmodelle zu beziehen. Das MVC-Muster ist vor allem in der Softwareentwicklung mit Programmiersprachen wie Java, Smalltalk, C und C++ verbreitet.

Das MVC-Muster wurde von vielen Entwicklern für die Wiederverwendung von Objektcode verwendet und gilt als ein Konzept, das die Entwicklungszeit von Anwendungen mit Benutzeroberflächen erheblich reduziert.

Das Model-View-Controller-Muster schlägt drei Hauptkomponenten oder Objekte vor, die in der Softwareentwicklung verwendet werden sollten:

  • Ein Modell (Model), das die zugrunde liegende logische Struktur von Daten in einer Anwendung repräsentiert und die High-Level-Klasse, die damit verbunden ist. Dieses Objektmodell enthält keinerlei Informationen über die Benutzeroberfläche.
  • Eine Präsentation (View) als eine Sammlung von Klassen, die die Elemente in der Benutzeroberfläche darstellen (alle Dinge, die Benutzer sehen und auf die sie auf dem Bildschirm reagieren können, wie Buttons, Display-Boxen und so weiter). Die Präsentation ist vor allem für die Darstellung der benötigten Daten aus dem Modell und die Entgegennahme von Benutzerinteraktionen zuständig.
  • Eine Steuerung (Controller), die die Klassen repräsentiert und das Modell und die Präsentation verbindet. Die Steuerung wird für die Kommunikation zwischen den Klassen im Modell und in der Präsentation verwendet. Sie verwaltet eine oder mehrere Präsentationen, nimmt von ihnen Benutzeraktionen entgegen, wertet diese aus und agiert entsprechend.

Ziel des Musters ist ein flexibler Programmentwurf, der eine spätere Änderung oder Erweiterung erleichtert und eine Wiederverwendbarkeit der einzelnen Komponenten möglich macht. Es kann dann zum Beispiel eine Anwendung geschrieben werden, die dasselbe Modell nutzt und es dann für Windows, Mac, Linux oder für das Internet zugänglich macht. Die Umsetzungen nutzen dasselbe Modell, nur Controller und View müssen dabei jeweils neu implementiert werden.

Diese Definition wurde zuletzt im Oktober 2016 aktualisiert

Erfahren Sie mehr über Softwareentwicklung