Wir haben ein Arbeitsprojekt in Windows 8.1, die kompatibel zu Win 10 gemacht wird. Jetzt ist die Anforderung, dieses Projekt in UWP zu konvertieren. In dem früheren Projekt haben wir PRISM als Rahmen für MVVM verwendet. Jetzt ist das Problem, dass für UWP-Anwendung die neue Version für Prism noch nicht freigegeben ist und wir erwägen, MVVMLight zu verwenden.Prisma vs MVVM Licht für UWP-Anwendung
Ich bin neu in diesen beiden Frameworks, dh PRISM und MVVMLight. Jetzt ist meine Frage, wie schwierig es sein wird, die Codebasis von PRISM nach MVVMLight zu verschieben. Wenn es schwierig wird, sollte warten, bis PRISM neuere Version veröffentlicht wird. Und wenn wir zu MVVMLight wechseln sollten, müssen die wichtigsten Änderungen vorgenommen werden.
Nach meiner Beobachtung ist die Code-Basis stark mit PRISM gekoppelt, wo es extensiven Einsatz von Schnittstellen wie IResourceLoader ist, ISessionStateService und so weiter über den gesamten Code. Außerdem habe ich gelesen, dass PRISM eine Lernkurve hat, MVVMLight dagegen nicht. Wenn wir also zu MVVMLight wechseln, muss ich zuerst PRISM lernen, um die Codebasis zu verstehen, und dann MVVMLight lernen, die Codebasis zu portieren. Wenn wir uns entscheiden, auf eine neuere Version von PRISM zu warten, die irgendwann in dieser Woche veröffentlicht wird, wird es dann wichtige Codeänderungen geben?
Wie wird Unit Testing in Bezug auf beide Rahmen unterstützt.
Da ist nicht viel Zeit für diese Aufgabe, die am effizientesten Weg sein wird, zu vergeben?
* * „die Code-Basis ist mit PRISM hoch gekoppelt“ - Ich denke, das hier Ihr größtes Problem ist. –
Okay. Könnten Sie bitte ein wenig darüber schreiben, welche Anstrengungen erforderlich sein werden, um zu MVVMLight zu wechseln, da wir noch keine Freigabe für die Verwendung von PRISM erhalten? Und ich habe gesagt, neu in beiden Frameworks. – Aakansha
Sie brauchen kein schickes Framework, um MVVM für Sie arbeiten zu lassen, es macht nur ein paar Dinge leichter zu erreichen, wie zum Beispiel ** Dependency Injection **. Der heilige Gral ist, dass Ihr Code ** adaptiv ** sein kann, um Schichten zu ändern und Implementierungen als ** Interfaces ** auszusetzen. Wenn Sie ein ausgefallenes Framework verwenden, werden Sie höchstwahrscheinlich an dieses Framework gebunden, sofern Sie keine Möglichkeit finden, die Abhängigkeiten zu trennen. Dies ist ein ziemlich großes Thema, aber ich würde empfehlen, auf [adaptive code] zu lesen (http://www.amazon.co.uk/Adaptive-Code-via-Interface-Principles/dp/0735683204). –