27
Creating extensible application using MEF @Ben_Hall [email protected] Blog.BenHall.me.uk Meerkatalyst

Mef - NxtGenUG Coventry

Embed Size (px)

DESCRIPTION

MEF presentation given at NxtGenUG Coventry on 19th October 2009.

Citation preview

Page 1: Mef - NxtGenUG Coventry

Creating extensible application using MEF

@[email protected]

Meerkatalyst

Page 2: Mef - NxtGenUG Coventry

Agenda

• MEF ABCs• Extensibility in .Net 2.0• Extensibility with MEF• MEF Internally

Page 3: Mef - NxtGenUG Coventry

Managed Extensibility Framework

Page 4: Mef - NxtGenUG Coventry

http://www.flickr.com/photos/leon_homan/2856628778/

Page 5: Mef - NxtGenUG Coventry

http://www.flickr.com/photos/zen/2273186263/

Page 6: Mef - NxtGenUG Coventry

External and Internal

Page 7: Mef - NxtGenUG Coventry

Sadly some companies don’t see this as important!

Page 8: Mef - NxtGenUG Coventry

Internal is about making your life easier

Page 9: Mef - NxtGenUG Coventry
Page 10: Mef - NxtGenUG Coventry

http://www.flickr.com/photos/mag3737/1914076277/

Page 11: Mef - NxtGenUG Coventry

MS-PL

http://www.flickr.com/photos/25501212@N05/2934269081/

Page 12: Mef - NxtGenUG Coventry
Page 13: Mef - NxtGenUG Coventry

http://www.flickr.com/photos/dunechaser/2918021174/

Page 14: Mef - NxtGenUG Coventry

[Export]

I have something to offer

Page 15: Mef - NxtGenUG Coventry

[Import]

I need something

Page 16: Mef - NxtGenUG Coventry

Catalog

I know about some exports

Page 17: Mef - NxtGenUG Coventry

Container

I know about everything

Page 18: Mef - NxtGenUG Coventry

HELLO WORLDDEMO

Page 19: Mef - NxtGenUG Coventry

MEFUNITDEMO

Page 20: Mef - NxtGenUG Coventry
Page 21: Mef - NxtGenUG Coventry

FROM 2.0 TO MEFDEMO

Page 22: Mef - NxtGenUG Coventry

BEYOND 3RD PARTY ADDINSDEMO

Page 23: Mef - NxtGenUG Coventry
Page 24: Mef - NxtGenUG Coventry

In summary...

http://www.flickr.com/photos/m0php/530526644/

Page 25: Mef - NxtGenUG Coventry

Summary

• Extensibility• Allows 3rd parties to hook-in• Allows internals to be decoupled• Override your built in defaults• Part of .Net 4.0 but built on 3.5• Available today from Codeplex

Page 26: Mef - NxtGenUG Coventry

Thank you!

Twitter - @Ben_HallBlog.BenHall.me.uk

[email protected]

Page 27: Mef - NxtGenUG Coventry

Resources

• http://blog.BenHall.me.uk• http://www.codeplex.com/mef• http://blogs.msdn.com/gblock