2012-08-27 9 views
5

Ich habe von Windows Forms zu WPF migriert und versuche, Prism zu verwenden, um die Anforderung zu erfüllen, dass die Anwendung Plug-in-orientiert sein soll.Prism - Schlechte Idee, es zu benutzen?

Mein Problem ist, dass es scheinbar keine Unterstützung dafür gibt. Ich habe auch gehört, dass es in einigen Fällen extrem undicht ist. Da ich gerade eine Unternehmensanwendung entwickle, ist das inakzeptabel.

Wenn dies der Fall ist, und es eine schlechte Idee ist, Prism zu verwenden, gibt es Alternativen, um eine zusammengesetzte Anwendung zu erstellen? Ich kann nur an MEF denken.

+0

Sie könnten prüfen, [Caliburn.Micro] (http://caliburnmicro.codeplex.com/). Es ist leichter als Prism, deckt aber den Kompositionsteil der Plug-In-Funktionalität ziemlich gut ab. –

Antwort

5

Mit Prism haben Sie die Möglichkeit, Unity und/oder MEF als IoC/DI-Framework zu verwenden .... es ist auch sehr erweiterbar ... so können Sie verschiedene IoC-Container plugintieren, wenn Sie es wünschen.

Einige der Probleme mit Lecks können in der Regel darauf zurückzuführen sein, WPF nicht in einer bestimmten Weise zu verwenden, z. Sie müssen schwache Delegaten/schwache Ereignismuster usw. verwenden.

Sie könnten Ihr eigenes Plug-in-Framework mit MEF rollen, aber Sie müssen wahrscheinlich einige der Dinge neu erfinden, die Prism bereits für Sie tut, z. ein EventAggregator usw.

Sie könnten ein alternatives Framework wählen, alle haben ihre Stärken und Schwächen.

Es gibt eine andere Microsoft-Technologie, nämlich die Unterstützung Plug-In ausgerichtet ist, System.AddIn/Managed-Add-In Framework (MAF) .... aber man muss in einem setzen etwas mehr Gerüstbau.

Jemand hat mit einem Rahmen kommen, die MEF hier verwendet:

Wenn Sie mit bei einem Enterprise-Größe Projekt aussehen wollen ihre eigene sehr steckbare/modulare Architektur dann könnte man nicht schlechter als SharpDevelop für i schauen nspiration.

.... und es ist über die Grenzen der Möglichkeit nicht, wenn Sie wirklich wollen aus mehreren Gerüsten die besten Stücke zu kombinieren.

+0

Vielen Dank für die Informationen. Ich werde wahrscheinlich am Ende nur meinen eigenen Rahmen schaffen und mir einige dieser Ideen ausleihen. – TrialAndError

Verwandte Themen