Managed Extensibility Framework

Managed Extensibility Framework
Developer(s) Microsoft
Stable release
V1 in .NET Framework 4.0 / April 12, 2010 (2010-04-12)
Preview release
V2 Preview 5 / December 19, 2011 (2011-12-19)
Written in .NET Languages
Type Web application framework
License Ms-PL
Website mef.codeplex.com

Managed Extensibility Framework (MEF) is a component of .NET Framework 4.0 aiming to create lightweight, extensible applications. It aims to allow .NET application developers to discover and use extensions with no configuration required. It also aims to let extension developers encapsulate code easily and avoid fragile hard dependencies. Furthermore, it aims to allow extensions to be reused across applications. MEF was introduced as a part of .NET 4.0 and Silverlight 4.

Unsupported, pre-release versions of MEF are also available on CodePlex along with source code[1] and can be used, albeit unsupported and with limitations, on version 3.5 of the framework.

What problems does MEF aim to solve?

MEF aims to solve the runtime extensibility problem. Without MEF, any application that wants to support a plugin model needs to create its own infrastructure from scratch. Those plugins will often be application-specific and cannot be reused across multiple implementations.

How does MEF work?

Roughly speaking, MEF's core consists of a catalog and a CompositionContainer. A catalog is responsible for discovering extensions and the container coordinates creation and satisfies dependencies.

References

  1. "Managed Extensibility Framework - Home". Codeplex. Microsoft. Retrieved 2014-04-30.
This article is issued from Wikipedia - version of the 5/27/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.