creating extensible application using mef
DESCRIPTION
Creating extensible application using MEF session delivered at DDD Belfast, 4th April 2009. Code samples are available on blog.benhall.me.ukTRANSCRIPT
![Page 2: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/2.jpg)
Agenda
• MEF ABCs• Extensibility in .Net 2.0• Extensibility with MEF• MEF Internally
![Page 3: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/3.jpg)
Managed Extensibility Framework
![Page 4: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/4.jpg)
![Page 5: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/5.jpg)
![Page 6: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/6.jpg)
Internal and External
![Page 7: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/7.jpg)
![Page 8: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/8.jpg)
![Page 9: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/9.jpg)
MS-PL
![Page 10: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/10.jpg)
![Page 11: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/11.jpg)
![Page 12: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/12.jpg)
[Export]
I have something to offer
![Page 13: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/13.jpg)
[Import]
I need something
![Page 14: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/14.jpg)
Catalog
I know about some exports
![Page 15: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/15.jpg)
Container
I know about everything
![Page 16: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/16.jpg)
HELLO WORLDDEMO
![Page 17: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/17.jpg)
![Page 18: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/18.jpg)
LIFE IN 2.0DEMO
![Page 19: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/19.jpg)
![Page 20: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/20.jpg)
LIFE WITH MEFDEMO
![Page 21: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/21.jpg)
BEYOND 3RD PARTY ADDINSDEMO
![Page 22: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/22.jpg)
BEING SELECTIVEDEMO
![Page 23: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/23.jpg)
Visual Studio 2010
![Page 24: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/24.jpg)
In summary...
![Page 25: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/25.jpg)
Summary
• Need to compose parent for child imports to be populated
• Allows externals to hook-in• Allows internals to be decoupled• Override your built in defaults• Part of .Net 4.0 • Available today from Codeplex
![Page 27: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/27.jpg)
Resources
• http://blog.BenHall.me.uk• http://www.codeplex.com/mef• http://blogs.msdn.com/gblock
![Page 28: Creating extensible application using MEF](https://reader033.vdocuments.site/reader033/viewer/2022061306/54b3b25b4a79597f5f8b463b/html5/thumbnails/28.jpg)
Flickr Images
• http://www.flickr.com/photos/m0php/530526644/• http://www.flickr.com/photos/dunechaser/
2918021174/• http://www.flickr.com/photos/
mag3737/1914076277/• http://www.flickr.com/photos/
25501212@N05/2934269081/• http://www.flickr.com/photos/zen/2273186263/• http://www.flickr.com/photos/leon_homan/
2856628778/