Ich habe vor kurzem beschlossen, iOS-Entwicklung zu lernen, und zu diesem Zweck habe ich iOS-Programmierung gelesen : The Big Nerd Ranch Guide . In dem Buch beschreiben die Autoren ein Entwurfsmuster MVCS - Model-View-Controller-Store , wobei die Grundidee darin besteht, dass viele Anwendungen mehrere externe Datenquellen verwenden, um die Anforderungslogik im Controller beizubehalten schlagen vor, dass die gesamte Anforderungslogik aus der Steuerung in ein separates Objekt verschoben wird.
Kurz, um das Buch zu zitieren
Model-View-Controller-Store fügt die Anforderungslogik in ein separates Objekt ein und nennt dieses Objekt einen Store (Abbildung 28.4). Die Verwendung eines Geschäftsobjekts minimiert redundanten Code und vereinfacht den Code, der Daten abruft und speichert. Am wichtigsten ist, dass die Logik für den Umgang mit einer externen Quelle in eine ordentliche Klasse mit einem klaren und fokussierten Ziel überführt wird. Dies erleichtert das Verständnis des Codes, was die Wartung und das Debuggen sowie den Austausch mit anderen Programmierern in Ihrem Team erleichtert.
Und
Das Coole an asynchronen Speichern ist, dass sich der Fluss der Anforderung und ihre Antwort an einer Stelle im Controller befinden, obwohl viele Objekte viel Arbeit für die Verarbeitung einer Anforderung leisten. Dies gibt uns den Vorteil von Code, der leicht zu lesen und auch leicht zu ändern ist.
Ich wollte mehr über dieses Muster herausfinden und sehen, was andere dazu sagen könnten, aber während ich online suchte, konnte ich nur Hinweise auf dasselbe Buch finden (ist das Muster vielleicht unter einem anderen Namen bekannt?).
Für mich scheint die Logik des Autors sinnvoll zu sein und sie scheint eine logische Erweiterung des regulären MVC-Musters zu sein, aber vielleicht liegt das daran, dass ich nicht wirklich viel Erfahrung mit dem MVC-Muster in der Praxis habe (abgesehen von meinem Einstieg in die iOS-Entwicklung) Art von verwendetem MVV mit backbone.js (das heißt, wenn Sie es als MVC betrachten ).
Ich hatte gehofft, dass vielleicht jemand mit mehr Erfahrung ein bisschen Licht ins Dunkel bringen kann, ob es offensichtliche Fehler / Probleme mit dem MVCS- Muster gibt, die mir fehlen.