[MUSIC]
In der Web-Entwicklung hört man oft Leute, die über das MVC-Framework und
das MVVM-Framework sprechen und so weiter.
Was genau sind diese Frameworks?
Wie sind sie nützlich bei der Webentwicklung?
Lassen Sie uns kurz darüber reden.
In der Software-Engineering-Welt
hört man oft Leute, die über Designmuster sprechen.
Was genau sie bedeuten, ist, das Rad jedes Mal neu zu erfinden.
Ein Entwurfsmuster ist eine gut dokumentierte Lösung für ein wiederkehrendes Problem.
Sehr oft sehen Sie sich wiederholt ähnliche Probleme zu lösen.
Wenn wir eine gut spezifizierte Dokumentation haben, wie man diese Probleme lösen kann,
warum sollte man das Rad jedes Mal neu erfinden?
Hier
entsteht also das Designmusterkonzept des Software-Engineerings.
Manchmal sehen Sie auch Leute, die sich auf diese als Architekturmuster beziehen.
Zusammenfassend sind insbesondere Software-Entwurfsmuster eine wiederverwendbare
Lösung für häufig auftretende Probleme, die in der Software gelöst werden.
In diesem Zusammenhang hört man oft Leute, die über die vierköpfige Bande reden.
Dies war eine Gruppe von vier Autoren, die dieses bahnbrechende Buch namens
Design Patterns: Elemente wiederverwendbarer objektorientierter Software geschrieben haben.
In diesem Buch identifizierten sie eine große Reihe von häufig verwendeten
Entwurfsmustern in der Softwareentwicklung.
Dies war eine der ersten gut dokumentierten Erkundung von Designmustern
und wurde daher zum Goldstandard für alle, die in der
Software-Engineering arbeiten, besonders besorgt über Design-Pakete.
Dieses Software-Engineering-Muster ermöglicht es uns,
Domänenlogik von der Benutzeroberfläche zu isolieren.
Sie trennen also im Grunde die Ansicht des Benutzers der Informationen
von der tatsächlichen Logik und wie die gespeicherten und manipulierten Informationen.
Jetzt werden Sie dieses Konzept der Trennung von Bedenken immer und
immer wieder in diesem Zusammenhang hören.
Die Trennung der Bedenken erleichtert die unabhängige Entwicklung
jedes dieser drei Teile unserer Anwendung und
ermöglicht auch die Prüfung und Wartung dieser verschiedenen Teile.
Jetzt können wir unsere gesamte Anwendung in drei Teile unterteilen,
die Ansicht, die in erster Linie mit der Präsentation von Informationen für den Benutzer beschäftigt ist,
das Modell, das den Domänenstatus und die Domänenlogik speichert und
bietet auch die Möglichkeit,
diesen Zustand aus dem Rest der Anwendung zu manipulieren und
der Controller, der zwischen der Ansicht und dem Modell vermittelt.
Wir werden über jeden dieser drei Teile als nächstes etwas ausführlicher sprechen.
Im MVC-Framework verwaltet das Modell das Verhalten und die
Daten der Anwendungsdomäne.
Und das Modell reagiert auf Anfragen nach Informationen über seinen aktuellen Zustand.
Wenn die Ansicht also gerendert werden möchte oder die Ansicht
sich selbst aktualisieren möchte, kann sie das Modell abfragen, um Informationen zu erhalten
, so dass es für den Benutzer angemessen gerendert werden kann.
Das Modell reagiert auch auf Anfragen zur Änderung seines Zustands.
Dies geschieht normalerweise über die Steuerung.
In einem ereignisgesteuerten System
kann das Modell auch so konfiguriert werden, dass Beobachter benachrichtigt werden.
So können sich Betrachter selbst als Beobachter für das Modell registrieren.
Wenn das Modell aktualisiert wird, werden die Ansichten automatisch ausgelöst, um
sich basierend auf der Änderung des Modellstatus zu aktualisieren.
Die Ansicht selbst befasst sich mit der Darstellung der Informationen an die Benutzer in einem
Benutzeroberflächenelement so, dass sie sowohl die Darstellung von
Informationen für den Benutzer erleichtert als auch dem Benutzer die Interaktion mit der Anwendung ermöglicht.
Daher kann die Ansicht eine Darstellung des Modellstatus darstellen.
So können Sie aus einem einzelnen Modell problemlos mehrere Möglichkeiten ableiten,
diese Informationen dem Benutzer zu präsentieren, abhängig von der
Größe des Ansichtsfensters.
So ein kleines Ansichtsfenster, wie bei einer mobilen Anwendung,
werden die Informationen auf eine andere Art und Weise dargestellt werden, im Gegensatz
zu einem größeren Ansichtsport, der auf einem Desktop-Computer erleichtert wird.
In einem MVC-Framework hat die gesamte Anzeige von Informationen eine
Eins-zu-Eins-Korrespondenz mit dem Modellzustand.
Das dritte Puzzleteil im MCV-Framework ist der Controller.
Der Auftrag des Controllers besteht darin, Informationen aus der Ansicht zu erhalten.
Jede durchgeführte Benutzerinteraktion wird also erfasst und
dann an den Controller weitergegeben, um auf diese Benutzerinteraktionen zu reagieren.
Und es ist die Aufgabe des Controllers, dann eine Änderung des Zustands
des Modells zu initiieren, wenn es in dieser speziellen Situation erforderlich ist.
Daher wird der Controller angemessen die Änderung des Status des Modells verursachen.
Zusammenfassend kann der Controller Eingaben
des Benutzers in Bezug auf die Benutzerinteraktionen akzeptieren, die stattgefunden haben, und
dann wird er das Modell anweisen, den Zustand zu ändern.
Gleichzeitig kann der Controller auch
dazu führen, dass die Ansicht die Art und Weise ändert, wie die Informationen in der Ansicht angezeigt werden.
Das ist der Grund, warum Sie in diesem Bild zwei Pfeile haben,
die vom Controller gehen, einer zum Modell und der andere in Richtung der Ansicht.
Manchmal hören Sie Leute, die über den Ansicht-Modellansatz der Modellansicht sprechen.
Der Ansatz des Modellansichts-Ansichtsmodells ist in gewissem Sinne
eine Ableitung des Model-View-Controller-Ansatzes.
Manchmal hören Sie auch Leute, die sich darauf als
Ansichtenbinderansatz für Modellansichten beziehen.
Hier haben Sie das Modell, das die Geschäftslogik und
die Daten für Ihre Anwendung darstellt.
Aus dem Modell leiten Sie ein Ansichtsmodell ab, das den
Teil der Informationen kapselt, der für das Rendern einer bestimmten Ansicht erforderlich ist.
Das Ansichtsmodell ist also die Abstraktion der Ansicht, die
die öffentlichen Eigenschaften und die verschiedenen verfügbaren Befehle zur Verfügung stellt.
Dies stellt also eine deklarative Datenbindung zur Verfügung.
In gewissem Sinne
kann die Art und Weise, wie die Komponente und die Vorlagen in eckig implementiert werden, als
eine Variante des Modellansichtsansatzes betrachtet werden.
Mit diesem schnellen Verständnis des MVC und des MVVM-Frameworks
lassen Sie uns jetzt mehr über eckige Dienste verstehen.
( MUSIK)