Alternativen zum Prisma + MEF für modulare MVVM-Apps [geschlossen]
-
14-11-2019 - |
Frage
Mein Team und ich fangen an, die Entwicklung einer modularen Anwendung zu planen, die wahrscheinlich Multi-Target WPF & Silverlight wird.
Ich persönlich habe etwas Erfahrung mit der älteren Version von Prisma, um eine Composite Silverlight-App mit dem MVVM-Muster zu erstellen. Wir waren mit MEF zu diesem Zeitpunkt nicht vertraut, um die verschiedenen Modulabhängigkeiten umzugehen, also haben wir es nicht benutzt.
Wir sind nicht mit einem bestimmten Rahmen verheiratet, möchten aber einen der größeren Spieler da draußen verwenden. Als solches haben wir begonnen, Caliburn / Caliburn Micro, Prism, MVVM-Licht und reaktive UI zu untersuchen.
Die meisten von dem, was ich für die Modularität gelesen habe, schlägt Prisma und MEF vor, um diesen Teil des Prozesses zu handhaben. Da ich immer noch meinen Kopf um einige davon umwickle, bin ich nicht sicher, ob ich offensichtliche Optionen vermisse. Ich konnte diesen Artikel auf Caliburn Micro und MEF .
Kann mich jeder auf ähnliche Artikel mit einigen der anderen Frameworks hinweisen, um eine zusammengesetzte App ähnlich zu erstellen, wie PRSIM Regionen usw. verwendet? Idealerweise möchte ich die Anzahl der erforderlichen Rahmenbedingungen einschränken, während es maximale Flexibilität bereitgestellt wird. Wir sind nicht abgeneigt, einen "Best of Breed" -Ansatz zu nehmen und zum Beispiel MEF / PRISM, um das Verbund- und MVVM-Licht für das View-Management usw. zu behandeln. Aber warum nutzen Sie 2, wann 1 tun wird?
Lösung
Eine Sache, die Sie wahrscheinlich zuerst tun sollten, ist diese in ihre entsprechenden Eimer zu isolieren. Ich sehe dies sehr, wo Menschen MVVM-Frameworks mit Frameworks mit Anwendungszusammensetzungen mischen. Sobald Sie sie in den entsprechenden Eimer haben, können Sie einen Rahmen aus jeder Kategorie auswählen und kombinieren, was Sie als das beste Szenario betrachten.
- Prism (mit jedem IOC-Container: MEF, Einheit, Ninject, Autofac usw. Es gibt ein paar Dinge, die MVVM mit Prisma leichter machen, aber ich würde es nicht ein voll ausgebildetes MVVM-Framework nennen ... es ist in erster Linie ein Modulare Anwendungszusammensetzung Framwork.)
- mef (MEEF ist eigentlich in der Lage, Anwendungszusammensetzung aus der Box auszuführen. Es wird oft als nur ein IOC-Framework abgewiesen, aber es ist täuschend mächtig.)
MVVM-Frameworks - reactiveui (mein Favorit)
- Caliburn
- Caliburn Micro
- mvvm light
Dies hilft Ihnen, eine Entscheidung zu treffen, denke ich. Sie können auswählen und die Anwendungs-Kompositionstechnologie Sie mögen, und ein MVVM-Framework, das Sie mögen und an den Rennen laufen lassen.
Wie für Artikel habe ich nicht zu viele. Es gibt viele gute Artikel zur Anwendungszusammensetzung mit Prisma (das ist so ziemlich seinen Job), aber hier ist ein guter Artikel über Anwendungszusammensetzung mit MEF von selbst:
Sie sollten auch die Serie der Glenn Blocks-Serie "Building HelloMomef" in seinem Blog ansehen. Ich konnte keine umfassende Liste gefunden (er war nicht mit seinem Tagging konzentriert), aber hier ist das Tag "MEF". Viel gutes Zeug hier:
http://blogs.msdn. COM / B / GBLOCK / Archiv / Tags / MEF / Default.aspx? PageIndex= 1