Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 20729|Antwort: 1

[ASP.NET] Das MVC-Framework-Muster ist tot

[Link kopieren]
Veröffentlicht am 06.12.2014 22:17:21 | | | |
MVC-Modus: Model View versucht, den Controller zu steuern, was der aktuelle Mainstream-Modus ist und als grundlegender Modus für Server-Software-Eingaben zum Lernen und Beherrschen genutzt wird, und das Mainstream-Framework Struts 1/2 JSF Wicket unterstützt im Grunde den MVC-Modus.

Mit der kontinuierlichen Popularisierung von B/S- und Internetanwendungen, Web 2.0 und einer Vielzahl häufig interaktiver Anwendungen wie soziale Medien und Spiele ist der relativ statische MVC-Modus jedoch nicht mehr für hochinteraktive und verhaltensorientierte Anwendungen geeignet.

DDD-Domänenmodellierung selbst legt mehr Wert auf die Struktur; sein Entitätswertobjekt und der Server sind ebenfalls eine Art strukturelle Trennung, betonen aber nicht die Bedeutung von Objektpflichten und -verhalten, und das ist der einzige Unterschied zwischen Objekten und Datenbanken.

Im GegenteilObjektgestaltung: Rollen, Verantwortlichkeiten und KooperationenDas Buch schlägt vor, dass das Objekt tatsächlich eine bestimmte Rolle spielt und die Rolle verantwortlich ist, und dann wird ein bestimmtes interaktives Verhalten in einem bestimmten Szenenkontext implementiert, das in Jdon ausführlich diskutiert wurde:
DCI, Domänenmodell, einige Ideen für Domänenereignisse
Asynchrones architektonisches Denken: Implementierung von Domänenmodellierung mit Akka

Das Buch fasst die vier Hauptnachteile zentralisierter Controller zusammen, und die MVC-Controller gehören tatsächlich zu diesem zentralisierten Controller-Stil:

1. Die Steuerungslogik kann übermäßig komplex werden. Controller können kompliziert werden, und es ist üblich, dass viele Leute Geschäftscode in den Action Controllern von Struts schreiben.Alle Aktionen sind in Aktionen, und einige Aktionen bestehen aus fast tausenden Zeilen.

2. Controller können von den Inhalten der Informationsinhaber abhängig werden. Controller werden abhängig von Informationszentren oder Datenbanken, Controller tun vieles, was bedeutet, dass Domänenobjekte sehr wenig tun, und der Controller am Ende nicht nur das tut, sondern auch strategische Entscheidungen trifft, sondern auch taktische Fragen wie die Umsetzung und die Umsetzung übernehmen.

3. Objekte können indirekt durch die Handlungen ihres Controllers gekoppelt werden. Objekte werden indirekt durch die Aktionen des Controllers miteinander gekoppelt, ein Objekt wird im Controller abgefragt, dann auf ein anderes Objekt kopiert, und die beiden Objekte werden miteinander gekoppelt.

4. Die einzige interessante Arbeit findet im Controller statt.

Der Controller des MVC ist eine Art Mediator-Modus, aber auch ein zentralisierter Controller; er ist der Hauptunterschied zum Beobachtermodus: Der Mediator-Modus kapselt die Kommunikation, während der Beobachter die dezentrale Kommunikation benutzt, hat der Controller aus Kommunikationssicht ebenfalls seine inhärenten Mängel, leicht zu einem großen und vollständig gekoppelten Konzentrator zu werden, diese sind alle fürOODas wird nicht toleriert.

DCI-ArchitekturEs handelt sich um ein neues Konzept, das erst kürzlich entstanden ist und Software aus einer neuen Perspektive betrachtet, die mit pflichtgetriebenem Design übereinstimmt und zutrifftDDDEntwicklung und Verbesserung.

DCI ist die Abkürzung für Data Context Interactions, und sein wichtiger Beitrag besteht darin, das Konzept der Szenen vorzustellen, das im Buch Duty-Driven Development nicht erwähnt wird, das MVC lediglich ablehnt, seine Probleme aufdeckt und keine Alternativen vorschlägtDCIEs handelt sich um die alternative Architektur von MVC, und DCI ersetzt MVC durch Szenarien zur Ersetzung von Controllern, wie in der untenstehenden Abbildung gezeigt (das Bild stammt daraus).Originalenglisch TheDCI Architecture: A New Vision of Object-Oriented Programming):

Die Szene gräbt tatsächlich einige der Steuerungen und Modelle aus MVC aus und setzt sie in Form von Charakterszenen wieder zusammen. Dies ist ein neuer Winkel, der völlig anders ist als die MVC-Modus-Überlegung, die eher diesem Winkel entsprichtOO

Kürzlich hat jemand das Thema angesprochenScene Context ist ein neuer Objekttyp, die Szene kann nicht nur ersetzt werdenSOAWebdienste können auch MVC-Controller ersetzen.

Persönlich denke ich, dass die neue hierarchische Architektur in Zukunft so aussehen könnte:
Ansicht --> Kontext ---> Domänenmodell ---> Komponente/Repository

Der MVC-Modus ist tot.





Vorhergehend:Eine Sammlung häufig verwendeter CAD-Bodenblöcke kann kostenlos heruntergeladen werden
Nächster:Multithreading bringt die Skalierbarkeit in eine Sackgasse
Veröffentlicht am 07.12.2014 17:23:04 |
Lesen und Zurückposten ist eine Tugend
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com