MEF and VS10 beta 1
As you might know, the new VS10 editor extensibility infrastructure is based in the Managed Extensibility framework (MEF).
MEF is a library for creating lightweight, extensible applications. It allows application developers to discover and use extensions with no configuration required.
The core of the MEF composition model is the composition container, which contains all the parts available and it responsible for performing composition.
Visual Studio has it own composition container which means that Visual Studio itself is a host for MEF components.
And of course MEF can be used not only to extend the editor, but other VS components too.
In the next series of posts I will start describing how the new IComponentModel service, the new VsShellComponentModelHost, VsCompositionContainer and VsCatalogProvider classes, works in details. (At least in VS10 Beta 1)
Some MEF pointers:
Managed Extensibility Framework project
Managed Extensibility Framework Programming guide
Managed Extensibility Framework Overview
Pablo