Differenz zwischen MVC und MVP Unterschied zwischen

Anonim

MVC vs MVP

bekannt ist. Model View Controller (auch bekannt als MVC) ist ein architektonisches Muster, das speziell im Software Engineering verwendet wird. Dieses spezielle Muster wird verwendet, um das zu isolieren, was als "Domänenlogik" bekannt ist - was einfach die Logik einer Anwendung für den Benutzer ist. Es ist isoliert von Eingabe und Präsentation (bekannt als GUI) und erlaubt eine unabhängige Entwicklung.

Model View Presenter (auch bekannt als MVP) ist eine direkte Permutation des MVC. Es ist ein Softwaremuster (genauer gesagt, ein Benutzeroberflächenentwurfsmuster), das speziell zum Unterstützen des Testens von automatisierten Einheiten entworfen wurde, und verbessert das, was als die Trennung von Bedenken in der Darstellungslogik bekannt ist. Die Trennung von Bedenken ist im Grunde genommen ein Prozess, bei dem ein Computerprogramm in verschiedene Merkmale unterteilt wird, die sich hinsichtlich ihrer Funktionsweise nicht überschneiden.

Der Modellteil des MVC ist im Wesentlichen ein Muster, das Daten über spezifische Domänen darstellt, die für den Betrieb der Anwendung verwendet werden. Der Ansichtsteil transformiert das Modell in eine Interaktion, die für Benutzer geeignet ist - dies ist normalerweise ein Benutzeroberflächenelement. Schließlich empfängt der Controller-Teil am besten die Eingabe. Durch Entscheidungen für die im Modell gefundenen Objekte dient der Controller als Katalysator für die Antwort.

Der Modellteil des MVP definiert die Daten, die in der Benutzerschnittstelle angezeigt (oder bearbeitet) werden sollen. Der Ansichtsbereich zeigt die im Modell definierten Daten an und sendet an den Benutzer gerichtete Befehle (bekannt als Ereignisse) an den Präsentator (der auf diese Daten reagiert). Der Moderator agiert dann auf das Modell und die Ansicht des Modells. Als solches ist es in der Lage, Daten aus Repositories (im Modell gefunden) abzurufen, die Daten fortzuführen und zu formatieren, damit sie in der Ansicht leicht angezeigt werden können.

Es gibt verschiedene MVC-Varianten. Daher ist der Ablauf des Steuerelements in einer sehr strengen Reihenfolge: Zuerst wird der Benutzer mit der Schnittstelle interagieren (zum Beispiel einen Knopf auf der Maus drücken), und dann kümmert sich der Controller um das Eingabeereignis und ändert es in die entsprechende Benutzeraktion. Als nächstes benachrichtigt der Controller das Modell darüber, was der Benutzer getan hat, was höchstwahrscheinlich dazu führen wird, dass das Modell seinen Zustand ändert (zum Beispiel als ein Update). Die Ansicht stellt dann eine Frage an das Modell, um die Benutzerschnittstelle zu erzeugen. Schließlich wartet die Benutzerschnittstelle auf Anweisungen, die den Zyklus neu starten.

Zusammenfassung:

1. MVC ist ein Architekturmuster, das Domänenlogik isoliert; MVP ist ein Nachkomme des MVC, der entwickelt wurde, um automatisierte Einheiten zu testen und die Trennung von Problemen zu verbessern.

2. In Bezug auf den MVC stellt das Modell die Daten dar, die Ansicht transformiert das Modell in eine benutzerfreundliche Interaktion und der Controller empfängt die Eingabe; In Bezug auf den MVP definiert das Modell die Daten, die Ansicht zeigt sie an und der Moderator wirkt auf das Modell und seine Ansicht.