簡體   English   中英

WPF復合應用程序:棱鏡模塊還是MEF零件?

[英]WPF Composite Application: Prism modules or MEF parts?

我需要編寫一個復合的WPF應用程序,其中的組件可能由其他團隊開發。 這些部分現在實際上是獨立的應用程序,我們希望將它們放在通用的“屋頂”下。

我考慮的兩個主要選擇是棱鏡模塊和MEF部件,我不確定100%選擇哪個,因為兩者都有優點和缺點。 請注意,這與IoC容器的選擇無關,而與發現可插拔組件有關。 我對MEF不用作IoC容器的觀點非常滿意。

如果我使用MEF來實現可插入性,那么最大的好處就是它可以嵌入到.NET框架中,因此沒有版本控制問題。 另一方面,我將不得不(部分地)重新構造諸如棱鏡區域管理器和其他UI合成功能的機制。

如果我使用Prism模塊,則會獲得更豐富的集成功能(區域,事件聚合器等),但是要使其正常工作,每個人都必須使用相同版本的Prism,最好是使用相同版本的Unity,以避免令人不愉快的意外。 因此,升級到Prism / Unity的下一個版本將成為一個挑戰。

我想聽聽您對選擇的意見。

幾年前,我有一個類似的選擇,然后選擇Prism。 我很高興自己做到了。 除非我構建一個瑣碎的應用程序,否則我不會考慮沒有Prism的情況。 您可以讓不同的開發人員小組在其模塊上幾乎隔離地工作,並在完成后將其集成。 錯誤和需求變更也是如此:更容易處理。

是的,您希望每個人都使用相同的版本,但這是一個很小的代價,而且很普遍。 如果您有特定問題,請告訴我。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM