Search code examples
c#wpfprismmefcal

Which and When CAL, Prism, MEF?


from last couple of days I was reading about the PRISM, CAL & MEF. All of these support the composition, modularity, bootstrapers, shell and region etc.

So question comes in my mind is. Where these all support main features for modularity so which framework to use and where they fit best.

can somebody guide me for the comparing these techs?


Solution

  • CAL was an old name for PRISM that is no longer in use. PRISM uses MEF, Unity or any other inversion of control library to implement composition and dependency injection. MEF is newer and easier to work with than Unity, but it all depends on the templates you decide to use.

    Perhaps you should check the Developer's Guid to Prism for a better understanding of PRISM. PRISM's use of IoC/DI is described in Modular Application Development/Dependency Injection and Modular Applications

    You should also note that PRISM is considered over-engineered, even if you think your application fits the Composite Application definition (it probably doesn't).

    It is much easier to get up to speed with MVVM and WPF development if you use a simpler framework like Caliburn.Micro or MVVM Light.