Skip to main content
2 of 2
added 145 characters in body
Scott Whitlock
  • 22k
  • 5
  • 64
  • 89

I wrote this Code Project article about using MEF for extensibility in .NET. It's a good introduction.

There are other extensibility frameworks for .NET, such as SharpDevelop's Add-in Architecture, Mono.Addins and System.AddIn.

For Java, there is the Eclipse Plug-in Architecture.

The general pattern is this:

  • You define a contract (normally an interface) between the host and the extension
  • You need a discovery mechanism that goes out and looks for installed extensions
  • You need to be able to dynamically load the extensions and make the host aware of them

In practice it shares a lot with Dependency Injection and the Strategy Pattern.

Scott Whitlock
  • 22k
  • 5
  • 64
  • 89