Skip to main content

Was ist Modell-View-Controller?

Modell-View-Controller (MVC) ist eine Art Softwarearchitektur und Designmuster, die jedes Element eines Programms in gut definierte Bereiche der Funktionalität unterteilt.In der Modell-View-Controller-Architektur befasst sich das Modell mit der gesamten internen Programmlogik, die Daten manipuliert, ruft, abruft und auf andere Weise verarbeitet und berechnet.Der Aspekt der Ansicht ist verantwortlich für die Anzeige von Informationen aus dem Modell für den Benutzer und bietet dem Benutzer auch eine Möglichkeit, das Programm Eingaben zu geben.Der Controller nimmt die Eingabe aus der Ansicht, bewertet oder anderweitig verarbeitet sie und interagiert mit dem Modell, um Daten oder den Programmstatus zu ändern, was dem Benutzer letztendlich durch die Ansicht angezeigt wird.Obwohl das Design des Modell-Viewer-Controller-Designs ein Programm zur Kapitulation von Funktionen fordert, müssen die drei Abschnitte noch in irgendeiner Weise miteinander interagieren und sind im Gegensatz zu anderen aggressiveren Designmustern im Allgemeinen abhängig.

ganz voneinander abhängig.Oft wird das Modell-View-Controller-Muster in Anwendungen angezeigt, die eine grafische Benutzeroberfläche (GUI) verwalten.Unter Verwendung des MVC -Musters werden die verschiedenen visuellen Elemente der GUI von der Ansicht behandelt, die Aufzeichnung und Verarbeitung von wo und was ein Benutzer klickt, wird vom Controller behandelt, und das Ändern von Informationen oder Ladeinformationen erfolgt vom Modell.Abhängig vom genauen Design einer Anwendung kann jede Komponente des MVC -Musters einen Mechanismus haben, um mit den anderen Komponenten zu interagieren, z.Controller, dass es den Bildschirm erfrischt und keine neuen Eingaben akzeptiert.Im Gegensatz zu einigen Entwurfsmustern, die einen strikten Black-Box-Ansatz verfolgen, sind Modell-View-Controller-Programme in der Regel etwas flexibler, obwohl einige Implementierungen ein MVC-Programm schwierig machen können, modular zu ändern oder zu debuggen.

In bestimmten Fällen das Modell-Das View-Controller-Muster muss nicht nur eine von jeder Komponente enthalten.Ein Beispiel ist eine Anwendung mit mehreren Ansichten, z. B. mehreren Monitoren oder einer Anzeige, die auf mehreren Client -Geräten zu sehen ist.Mehrere Ansichten und Controller können in einer Anwendung verwendet werden, mit der viele Benutzer auf eine Datenbank zugreifen können, die alle auf ein einzelnes Modell antworten.Es ist jedoch häufiger, Systeme zu entwerfen, die ein Eins-zu-Eins-Verhältnis der Modell-View-Kontroller-Komponenten beibehalten.Um bestimmte Teile eines Systems zu ändern, die das MVC-Muster verwenden, als wenn überhaupt kein Muster verwendet würde, insbesondere bei nicht objektorientierten Anwendungen.Wenn eine Anwendung Rückrufe oder Hörer und Beobachter verwendet, um Interaktionen zwischen den Komponenten zu implementieren, kann jede Komponente geändert werden, ohne die anderen beiden zu beeinflussen.Dies bedeutet, dass eine neue GUI implementiert werden könnte, ohne das Modell oder den Controller zu beeinflussen.Es ist jedoch zu beachten, dass grundlegende Änderungen an einem Modell-View-Controller-System für jede einzelne Komponente möglicherweise eine geringe Menge an Neucodierung erfordern.