8. A software extension is a computer program designed to be incorporated into another piece of softwarein order to enhance, or extend,the functionalities of the latter. Extension Wikipedia
15. Common Extensibility ScenarioWindows and Menus with MEF Application Need Menus Need a Toolwindow Got a MenuService Got a Toolwindow Got a Menu Extension A Extension B Need a MenuService
16. Common Extensibility ScenarioWindows and Menus with MEF Part Import Menus Import “Toolwindow” Import IMenuService Export “Toolwindow” Export aMenue Part Part Export IMenuService
49. MEF Resources Codeplex: http://codeplex.com/MEF http://codeplex.com/MEFContrib Program Manager: http://blogs.msdn.com/gblock/ Available in .NET Framework 4.0!
ManagedExtensibilityFramework fick massor med uppmärksamhet på PDC konferensen i höstas. Det var en av väldigt få sessioner som fick äran av Da Capo på grund av publiktryck!I den här sessionen kommer jag berätta allt om det nya ramverket som gör det enkeltatt arbeta modulärt och som gör det lätt att lägga till och byta ut funktioner i dina applikationer.Jag heter Magnus Mårtensson.Jag jobbar som konsult och coach på Dotway.
Jag lärdekänna Glenn när jag letade talare till Øredev. Nu är vi vänner på Facebook,LinkedIn, MSN, via våra blogar och Twitter osv.Dessutom har vi träffats IRL två gånger; Dels på PDC och dels här hemma på Øredev!Förkortningen MEF förresten… En liten anekdot i sammanhanget är att Glenns fru tycker det är lite svårt att berätta för folk vad hennes man jobbar med: He’sinvolved in MEF! METH är ett anfetaminliknande preparat!Så jag behöver väl inte ens säga att MEF kommer att få ett nytt namn innan det släpps?Jag har förresten några av Glenns slides med idag.
NärGlenn började på MEF teamet blev han alltså helt naturligt min MEF dealer och det var han som drog ner mig i träsket så att säga.Jag har skrivit den första blogposten om MEF i en ASP.NET lösning. Det jag gjorde var addera MEF så enkelt jag kunde till en compositeweb lösning.Så min blog post fick en hel del uppmärksamhet på Microsoft och då blev jag inbjuden att medverka till att staka ut riktningen av MEF i en privat mailgrupp på Microsoft.Jag är alltså en mycket tidig beta användare av MEF och jag använder faktiskt MEF i ett kundprojekt idag!
Nu tänkte jag göra en liten publikundersökning med den här kodsliden!Det här har jag kodat många gånger i många olika kodprojkekt!Upp med handen alla som har kodat en sån här snurra!För varje assembly i katalogen; och sen för varje typ i assemblyn… det är rätt så många säg xx%!Detta är EN av de saker som ManagedExtensibilityFramework syftar till att ersätta och alla ni som höjde handen har nytta av MEF!
Så innan ni ger vika för erat alldeles egna lilla begynnande MEF beroende så kanske det kan vara på sin plats att nämna just det;Vilka är det som kommer att kunna dra nytta av MEF?Det är dels de som vill bygga applikationer som tredje part lätt kan utvidga.Dels de som vill bygga applikationer som är lättare att underhålla.Utbyggbarhet och underhåll är två nyckelproblem som MEF är designat för!
Det är nu sista slotten för konferensen jag är mycket väl medveten om att ni är så gott som på väg hem från den här mycket trevliga och givande tillställningen och att ni helt säkert är ordentligt trötta och hjärnmanglade vid det här laget! Jag vet att jag brukar vara det i slutet av konferenser i alla fall.Tack för att ni kom hit för att lyssna på mig och jag kan ärligt säga att Microsoft har sparat det bästa till sist!Vi kommer att gå igenom hur MEF funkar och det kommer att spilla över mer och mer i demos ju längre tiden går. Jag har fler demos än vad vi kommer att hinna med men det gör inget. Man kan säga att det här seminariet har en lång svans, dvs. vi kör så mycket som vi hinner och ni kommer att få massor med tips och trix om hur MEF fungerar och vad ni kan göra med det!Inom ett par veckor så lovar jag att jag kommer att lägga upp denna demo kod på codeplex och blogga om det från min blog! Jag har nämligen en annan session om ASP.NET MVC på SDC konferensen i nästa vecka.Det här är er take away från det här seminariet; MEF Makes ExtensibilityFun (Fabulous etc.) Jag kommer att tillbringa den kommande knappa timmen med att visa er varför!
Extensibility - (overloaded) taking an application that has already been compiled and adding more functionality to it. You can extend from the outside and extend from the inside.