O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Fundamentals of the Managed Extensibility Framework (MEF): Extensible Applications in .NET (Video Training)

Video Description

Learn how to leverage the Managed Extensibility Framework, part of the .NET 4.0 framework, to solve common problems encountered when developing enterprise applications. These include discovery for separation of concerns, metadata for filtering and sorting implementations, and extensibility for highly modular applications. You will not only learn how these concepts can be coded and applied, but also how they have been successfully used in existing applications to provide reliable, scalable solutions. Viewers will also learn how to use MEF’s Silverlight-specific extensions to build modular Silverlight applications “out of the box.”

The accompanying sample projects to this LiveLesson can be found in the "Extras" section:

MyFirstMEF
UnderstandingParts
Catalogs
Container
LifetimeManagement
LifetimeManagementSilverlight
PluginManager
LoggerImplementation
PluginMetadata
SilverlightMEF
MEFRecipes

Table of Contents

  1. Introduction
    1. General Introduction 00:04:18
  2. Lesson 1: Introducing Managed Extensibility Framework (MEF)
    1. Learning Objectives 00:00:50
    2. History of MEF 00:01:31
    3. Areas that MEF Addresses 00:02:46
    4. Availability of MEF 00:00:49
    5. Summary 00:01:06
  3. Lesson 2: Writing Your First MEF Application
    1. Learning Objectives 00:00:58
    2. Add the MEF References 00:02:15
    3. Use the Import Tag 00:02:51
    4. Allow Multiple Imports with ImportMany 00:04:43
    5. Use Export Tag 00:05:39
    6. Configure Your First Catalog 00:06:17
    7. Put it all Together with the Container 00:05:49
    8. Add a Plugin 00:04:16
    9. Summary 00:00:41
  4. Lesson 3: Understanding Parts, Catalogs, and Containers
    1. Learning Objectives 00:01:51
    2. Understand Parts 00:15:57
    3. Work with Catalogs 00:14:04
    4. The Composition Container 00:21:24
    5. Summary 00:01:10
  5. Lesson 4: Using MEF for Discovery
    1. Learning Objectives 00:01:31
    2. Background Concepts 00:04:15
    3. Clean Contracts Using Interfaces 00:04:56
    4. Require Discovery via the Contract 00:02:25
    5. Define the Implementation with Export 00:04:16
    6. Non-attributed Exports 00:03:23
    7. Lifetime Management 00:04:03
    8. Summary 00:00:57
  6. Lesson 5: Extensibility with MEF
    1. Learning Objectives 00:01:20
    2. Conceptual Plugin Design 00:05:04
    3. Advanced Imports 00:05:42
    4. Handling Re-composition 00:04:16
    5. Discovering Extensions 00:05:07
    6. Re-composed Collections 00:07:38
    7. Composition Batches 00:04:30
    8. Summary 00:01:11
  7. Lesson 6: Metadata and MEF
    1. Learning Objectives 00:01:01
    2. Discover without Metadata 00:01:46
    3. Extensions without Metadata 00:01:36
    4. Defining Metadata 00:02:39
    5. Filtering Metadata 00:04:20
    6. Common Uses for Metadata 00:02:18
    7. Common Uses for Metadata Part II 00:04:34
    8. Summary 00:01:09
  8. Lesson 7: MEF in Silverlight Applications
    1. Learning Objectives 00:01:07
    2. MEF in Silverlight 00:04:14
    3. XAML Considerations 00:04:07
    4. CompositionInitializer 00:04:23
    5. CompositionHost 00:01:57
    6. DeploymentCatalog 00:04:44
    7. Dynamic Module Loading 00:06:08
    8. Summary 00:00:54
  9. Lesson 8: Conclusion: MEF Recipes
    1. Learning Objectives 00:01:37
    2. Inversion of Control 00:20:28
    3. Lifetime Management and Configuration 00:12:20
    4. Factories 00:13:20
    5. Plugins and Modular Application 00:09:30
    6. Capability-based Imports 00:12:41
    7. Pipelines 00:02:08
    8. Summary 00:01:04