views:

133

answers:

2

Found several good(related) questions here and here but all are nearly a year old.

I will like to know in the current context of Prism development what is better or at least scenario where each is better.

+4  A: 

They are two approaches to solving some-what overlapping scenarios.

Unity shines when you are developing a modular application where users will be using a subset of the modules and modules are self-contained.

MEF shines when you have a lot of 3rd party developers creating plug-ins for your application - or several development teams publishing plugins.

We started out with Prism for core functionality and will be adding MEF for Widget-type functionality later - the idea being that border-line/customerspecific functionality will be delivered in MEF-plugins.

Both frameworks are really easy to get started with (MEF probably a bit 'simpler' from the get-go).

In my oppinion it really depends more on how your development strategy is structured rather than the application in question.

Goblin
Not sure I understand your point about Unity being best for subsetted applications. I don't see why MEF wouldn't be a great fit there, too. You would just ensure that only those pieces that the user has access to are downloaded/installed, and use MEF to discover and instantiate them.
Kent Boogaart
@Kent - I only said that Unity shines here - not that MEF isn't applicable. It's two solutions for a common problem-set: "Building extendable loosely-coupled applications". My input is only based on my use of the two. Unity IMO better handles the 'overridden' functionality scenario.
Goblin
@Goblin +1 for the same. @Goblin,@Kent-Boogaart:Thanks. Your comments rightly define my confusion. Each individual or blog post or documentation have something conflicting with others. I was looking for something which is specific. Eg. You need tea leaf to make a tea. You need coffee powder to make coffee. But everywhere they are talking about importance of milk and sugar.
Sachin
+3  A: 

Hi,

This thread also provides information about which one to use.

I hope you find it useful.

Thanks, Damian

Damian Schenkelman
+1 Thanks Buddy!
Sachin