Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Use (a) Prism for your development<br />Learn how to build highly composableapplications<br />12/21/2009<br />1<br />
KonstantinosPantos<br />http://blog.pantos.name<br />http://twitter.com/kpantos<br />12/21/2009<br />2<br />
Prism<br />Composite Application Guidance<br />Patterns and Practices Group<br />Targets Silverlight and WPF<br />Can be u...
Unity<br />IoC Inversion of Control<br />“Container”<br />Register Implementations<br />Lookup based on Interfaces<br />De...
Demo 1<br />Inversion of Control – Dependency Injection<br />12/21/2009<br />5<br />
Using Unity<br />Pros<br />Loosely coupled software<br />Cons<br />Independent libraries<br />Deployment<br />Have to put ...
Prism to the rescue<br />Modularity<br />List / Catalog / Set Modules<br />Dependencies on other modules<br />Flexibly loa...
Demo 2<br />Modularity - Prism<br />12/21/2009<br />8<br />
Using Prism <br />Quite a bit of Code<br />IServiceLocator<br />UnityContainer<br />IModuleInitilizer<br />IModuleCatalog<...
Demo 3<br />Bootstrapper<br />12/21/2009<br />10<br />
Prism in Silverlight<br />Coming Next<br />Most elaborate Hello World application<br />Shells, Regions, Views<br />Command...
Demo 4<br />Most elaborate Hello World! application<br />12/21/2009<br />12<br />
Stuff<br />Unityhttp://www.codeplex.com/Unity<br />Prism<br />http://www.codeplex.com/Prism<br />ServiceLocatorhttp://msdn...
Thank you<br />12/21/2009<br />14<br />
Upcoming SlideShare
Loading in …5
×

Use (a) Prism for your development

1,561 views

Published on

See how using "Prism" and it's friend Unity (an implementation of IoC) from the Patterns and Practices team can help in building Silverlight applications in a way that lends itself to testability and modularity.

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

Use (a) Prism for your development

  1. 1. Use (a) Prism for your development<br />Learn how to build highly composableapplications<br />12/21/2009<br />1<br />
  2. 2. KonstantinosPantos<br />http://blog.pantos.name<br />http://twitter.com/kpantos<br />12/21/2009<br />2<br />
  3. 3. Prism<br />Composite Application Guidance<br />Patterns and Practices Group<br />Targets Silverlight and WPF<br />Can be used for other kind off applications<br />Documentation<br />Libraries<br />Source Code<br />Default IoC - Dependency injection mechanism <br />Can use others Windsor Castle etc.<br />12/21/2009<br />3<br />
  4. 4. Unity<br />IoC Inversion of Control<br />“Container”<br />Register Implementations<br />Lookup based on Interfaces<br />Dependency Injection<br />12/21/2009<br />4<br />
  5. 5. Demo 1<br />Inversion of Control – Dependency Injection<br />12/21/2009<br />5<br />
  6. 6. Using Unity<br />Pros<br />Loosely coupled software<br />Cons<br />Independent libraries<br />Deployment<br />Have to put the libraries in the right folder at the right time.<br />Fusion resolution<br />What if I want to Load types from disk, web site, etc<br />What if I want to Load types on Demand<br />Assemblies’ dependencies<br />Registration ordering matters have to know the registration order. What happens for hundreds of assemblies?<br />12/21/2009<br />6<br />
  7. 7. Prism to the rescue<br />Modularity<br />List / Catalog / Set Modules<br />Dependencies on other modules<br />Flexibly loaded<br />File System, Web, XAP<br />Delay Loaded (i.e. only load on demand)<br />Module self - initialization<br />12/21/2009<br />7<br />
  8. 8. Demo 2<br />Modularity - Prism<br />12/21/2009<br />8<br />
  9. 9. Using Prism <br />Quite a bit of Code<br />IServiceLocator<br />UnityContainer<br />IModuleInitilizer<br />IModuleCatalog<br />IModuleManager<br />Bootstrappersolves all that!<br />12/21/2009<br />9<br />
  10. 10. Demo 3<br />Bootstrapper<br />12/21/2009<br />10<br />
  11. 11. Prism in Silverlight<br />Coming Next<br />Most elaborate Hello World application<br />Shells, Regions, Views<br />Commands<br />Event Aggregation<br />Region Context<br />12/21/2009<br />11<br />
  12. 12. Demo 4<br />Most elaborate Hello World! application<br />12/21/2009<br />12<br />
  13. 13. Stuff<br />Unityhttp://www.codeplex.com/Unity<br />Prism<br />http://www.codeplex.com/Prism<br />ServiceLocatorhttp://msdn.microsoft.com/en-us/library/dd464679(VS.85).aspx<br />Patterns and Practiceshttp://msdn.microsoft.com/en-us/practices/default.aspx<br />12/21/2009<br />13<br />
  14. 14. Thank you<br />12/21/2009<br />14<br />

×