Ich habe einige Fragen beim Entwerfen einer Architektur für ein Projekt rund um MVC. (Es ist ein C ++ / Marmalade SDK-Projekt, ich verwende kein bestimmtes MVC-Framework, ich erstelle eines.)
Auf einigen Artikeln (wie auf dem ursprünglichen Artikel von Steve Burbek ) lese ich immer wieder das Konzept "MVC triad", das mich stört , da ich dieses Konzept wörtlich genommen habe. Als ich es das erste Mal las, sah es so aus, als würde eine Anwendung um "MVC-Triaden" -Einheiten herum erstellt - eine für jedes UI-Teil, das ich angenommen habe -, aber ich finde, dass dies ziemlich unflexibel ist und ich denke, dass MVC nicht so verwendet werden sollte. Als ich mich dann weiter mit dem Thema befasste, fand ich einige Beispiele für eine enge Kopplung zwischen dem Controller und der Ansicht, nämlich eine 1-zu-1-Beziehung. TextEditView verfügt über TextEditController.
Aber wenn ich zu meinem Projekt zurückkehre, kann es nützlich sein, einen Controller (nach 'logischer Einheit' wie AddElementController) und mehrere Ansichten für diesen bestimmten Controller zu haben.
Ich denke eindeutig an so etwas wie einen AddElementController, der eine Art Benutzeroberfläche für Registerkarten haben sollte. Sollte ich einen AddElementController mit einem AddElementTabView und mehreren AddImageView, AddSoundView usw. für die Registerkarten haben? Oder sollte ich für jede Registerkartenansicht einen anderen "Sub-Controller" haben?
In der Summe und in Bezug auf das MVC-Muster (nicht das spezielle Verständnis / die Implementierung dieses Musters im X-Framework) ist es richtig, mehrere Ansichten für einen Controller zu haben, oder sollte jede Ansicht einen bestimmten Controller haben?
Ist es auch richtig, einige Statusinformationen auf dem Controller zu behalten, oder sollte sie zustandslos sein (was bedeutet, dass der Status auf einem Nicht-Domain-Statusmodell platziert werden sollte)?
Vielen Dank an alle im Voraus.
quelle