www.kolkatageeks.com By Abhishek Sur Website: www.abhisheksur.comEmail : email@example.com Twitter : @abhi2434
Agenda What is Extensibility? Developing an extensible application Adding MEF into it
Extensiblity Extensibility is an ability to design an application in such a manner so that 3rd party vendor can come along and customize it. Extensibility does not require the application to be redeployed. Extensible applications are flexible on client needs. Examples : Microsoft Office, Skype, World Warcraft etc.
MEF Architecture Catalog CatalogExportProvider AggregatingExportProvider CustomExportProvider CompositionContainer Part Part PartExport Import Export Import Export Import
MEF Catalog ◦ Discovers and maintain extensions CompositionContainer ◦ Coordinate creations and satisfy dependencies ComposablePart ◦ Are Imports and Exports that are composable to the Container Support for LAZY Support for Dynamic Recomposition
Finally Visual Studio is rich with MEF components They export functionality that your code might need. They import functionality that your code might offer. Your extension can export: ◦ IWPFTextViewMarginProvider ◦ ITaggerProvider ◦ IMouseProcessorProvider ◦ ICompletionSourceProvider ◦ There are lots more…….