Heim >Backend-Entwicklung >C#.Net-Tutorial >Eine kurze Diskussion über MVC und dreistufige Architektur

Eine kurze Diskussion über MVC und dreistufige Architektur

黄舟
黄舟Original
2017-02-23 10:10:053288Durchsuche

Lassen Sie mich Ihnen zunächst das Konzept von MVC vorstellen:

MVC-Modell (Model View Controller), Ansicht und Controller, es handelt sich um ein weiter verbreitetes Strukturdesign Modell.

Modell: Es sind die Daten, die im MVC-Entwurfsmuster angezeigt werden müssen. Unter normalen Umständen muss das Modell Daten aus der Datenbank lesen, den Status des Modells speichern usw. sowie Datenzugriffsmethoden und Datenpflege bereitstellen.

Ansicht: Dies ist die Benutzeroberfläche, die zum Anzeigen der Daten im Modell verwendet wird. Im Allgemeinen handelt es sich bei der Ansicht um eine HTML-Seite.

Controller: Wird zur Verarbeitung von Benutzereingaben oder interaktiven Befehlen verwendet, um den Status des Modells zu ändern und die entsprechende Ansicht zur Anzeige auszuwählen entsprechenden Modelldaten.

Der Arbeitsmechanismus ist rechts dargestellt:

(1) Der Benutzer stellt eine Anfrage an den Controller.

(2) Nach Erhalt der Benutzeranfrage fordert der Controller das Modell auf, relevante Daten zu erhalten.

(3) Das Modell gibt die entsprechenden Daten an den Controller zurück.

(4) Der Controller sendet relevante Daten an die angegebene Ansicht.

(5) Die Ansicht präsentiert dem Benutzer Daten.

Durch die obige Einführung glaube ich, dass jeder ein gewisses Verständnis und Verständnis für MVC hat. Was sind also die Ähnlichkeiten und Unterschiede zwischen MVC und der dreistufigen Architektur, die wir zuvor untersucht haben? ?

Was MVC und dreistufige Architektur gemeinsam haben:

Die Auslösepunkte von MVC und dreistufiger Architektur sind die gleichen – Schichtung und Entkopplung. Sie alle erreichen die Trennung von Anzeige und Daten, wodurch die Kopplung des Systems erheblich reduziert wird.

Aber aus professioneller Sicht hat MVC nichts mit drei Schichten zu tun, und MVC ist MVC. Das einzige, was sie verbinden kann, ist das Wort „drei“, aber aus der Sicht eines Anfängers ist es einfacher zu verstehen, wenn man die beiden zusammenfügt, um sie zu unterscheiden.

Der Unterschied zwischen MVC und drei Schichten:

Man kann sagen, dass der Rest, abgesehen davon, dass er gleich ist, alle unterschiedlich ist. Einzelheiten zu den jeweiligen Arbeitsmechanismen finden Sie in der folgenden Abbildung:

Die Benutzeroberfläche in den drei Ebenen ist in zerlegt MVC View und Controller, BLL und DAL werden im Modell zusammengeführt. Obwohl die dreistufige Architektur als dreistufige Architektur bezeichnet wird, können wir sie bei Bedarf in mehrere Schichten unterteilen. Das Modell ist auch an der dritten Schicht beteiligt, aber das Modell in der dritten Schicht unterscheidet sich völlig vom Modell in MVC. Das Modell in der dritten Schicht ist eine Tabellenentität, während das Modell in MVC Geschäftslogik und Datenzugriff umfasst.

Funktionen von MVC für Web Form:

(1) Einfacher Unit-Test

(2) Einfach zu implementierende testgetriebene Entwicklung

(3) Einfach zu erweitern und zu ersetzen

(4) Unterstützen Sie verwandte Funktionen im Web Form

(5) URL wird dem Controller zugeordnet

Obwohl MVC einige neue Funktionen für Web Form hat, kann MVC das traditionelle Web nicht ersetzen Formtechnologie: Diese beiden Technologien werden nur in unterschiedlichen Szenarien eingesetzt und haben unterschiedliche Vor- und Nachteile. Wir können nicht einseitig sagen, welche Technologie hoch und welche niedrig ist. Entwickler müssen entsprechende Technologieentwicklungsprojekte basierend auf ihrer tatsächlichen Situation auswählen. Das Obige ist ein persönliches Verständnis von MVC und der dreistufigen Architektur, indem relevante Informationen konsultiert werden. Wenn es Mängel gibt, kritisieren und korrigieren Sie diese bitte.

Das Obige ist eine kurze Diskussion über MVC und die dreistufige Architektur. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn).


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn