今天在MSDN上看了一下微软这俩个可扩展框架,微软技术高手真很有才!

MEF 和 MAF区别: 
早期的 .NET Framework 版本引入了 Managed Add-in Framework (MAF),旨在使应用程序能够隔离和管理扩展。 MAF 的重点放在比 MEF 稍高的级别,它集中于扩展隔离以及程序集的加载和卸载,而 MEF 则集中于可发现性、扩展性和可移植性。 这两个框架可以顺利地进行互操作,并且单个应用程序可以同时利用这两个框架。

1.Managed Extensibility Framework (MEF)

什么是 MEF? 
Managed Extensibility Framework 或 MEF 是一个用于创建可扩展的轻型应用程序的库。 应用程序开发人员可利用该库发现并使用扩展,而无需进行配置。 扩展开发人员还可以利用该库轻松地封装代码,避免生成脆弱的硬依赖项。 通过 MEF,不仅可以在应用程序内重用扩展,还可以在应用程序之间重用扩展。

msdn url:http://msdn.microsoft.com/zh-cn/library/dd460648.aspx

2.Managed Add-in Framework (MAF)

MAF是一个复杂的框架,并且即使是对于简单的应用程序,设置插件管道也很繁琐。

这是在System.AddIn命名空间,NET 3.5中引入。

这个框架插件可以配置为运行在他们自己的应用程序域,它最大的特点就是它可以防止您的应用程序崩溃的第三方插件。

插件开发预览:msdn url:http://msdn.microsoft.com/zh-cn/library/bb384200.aspx#addin_model

参考资料

http://msdn.microsoft.com/zh-cn/library/bb384200.aspx#addin_model

http://www.cnblogs.com/lc329857895/archive/2009/07/22/1528640.html 博客园相关文章

msdn blog 官方 http://blogs.msdn.com/b/clraddins/

http://tech.ddvip.com/2008-10/122499543784074.html

管线开发:http://msdn.microsoft.com/zh-cn/library/bb384201.aspx

MEF开发指南:http://www.cnblogs.com/beniao/archive/2010/08/11/1797537.html

http://blog.endjin.com/2010/10/component-discovery-and-composition-part-1b-fundamentals-mef/ discovery

MAF与MEF之间选择

http://www.cnblogs.com/niceWk/archive/2010/07/23/1783394.html

【转】 MEF 和 MAF的更多相关文章

  1. .Net插件编程模型:MEF和MAF[转载]

    .Net插件编程模型:MEF和MAF MEF和MAF都是C#下的插件编程框架,我们通过它们只需简单的配置下源代码就能轻松的实现插件编程概念,设计出可扩展的程序.这真是件美妙的事情! 今天抽了一点时间, ...

  2. 【.Net平台下插件开发】-MEF与MAF初步调研

    背景   Team希望开发一个插件的平台去让某搜索引擎变得更好.主要用于采集一些不满意信息(DSAT)给Dev.这些信息会由不同的team提供不同的 tool分析.有的提供仅仅是一个website,有 ...

  3. MEF、MAF和Unity的区别

    在刚学习MEF时,经常会问一个问题,那就是MEF和MAF这样的插件框架.和Unity这样的IoC框架到底有什么区别.MEF与MAF(Managed Addin Framework)最大不同在于:前者关 ...

  4. 也来学学插件式开发续-利用MEF

    前面一个博客:也来学学插件式开发中很多朋友留言说可以用MEF来实现.于是我就试着用MEF实现了一下. 步骤和上一篇差不多,只是加载插件的方式有所不同.这只是一个自己的示例程序,肯定有很多不足之处,欢迎 ...

  5. MEF——.NET中值得体验的精妙设计

    摘要:.NET 是 Microsoft XML Web services 平台.MEF是.NET Framework 4.0一个重要的库,Visual Studio 2010 Code Editor的 ...

  6. 什么是 MEF?

    什么是 MEF? Managed Extensibility Framework 即 MEF 是用于创建轻量.可扩展应用程序的库. 它让应用程序开发人员得以发现和使用扩展且无需配置. 它还让扩展开发人 ...

  7. .NET中值得体验的精妙设计

    转自: http://developer.51cto.com/art/201104/255455_all.htm .NET 是 Microsoft XML Web services 平台.MEF是.N ...

  8. 体验Managed Extensibility Framework精妙的设计

    MEF(Managed Extensibility Framework)是.NET Framework 4.0一个重要的库,Visual Studio 2010 Code Editor的扩展支持也是基 ...

  9. 重构笔记---MEF框架(上)

    概述 这篇文章的目的是简要分析对比MAF和MEF,并详细举出MEF设计中的细节和扩展上的细节,达到让读者能实际操作的目的.其中,MAF的设计会附上我的代码,其实就是官方的代码我自己手动联系了一遍,但还 ...

随机推荐

  1. JavaScript+DOM编程艺术【读书笔记】

    第四章笔记: 如何让一个a标签不跳转: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www. ...

  2. 简单登录案例(SharedPreferences存储账户信息)&联网请求图片并下载到SD卡(文件外部存储)

    新人刚学习Android两周,写一个随笔算是对两周学习成果的巩固,不足之处欢迎各位建议和完善. 这次写的是一个简单登录案例,大概功能如下: 注册的账户信息用SharedPreferences存储: 登 ...

  3. Java写一个简单学生管理系统

    其实作为一名Java的程序猿,无论你是初学也好,大神也罢,学生管理系统一直都是一个非常好的例子,初学者主要是用数组.List等等来写出一个简易的学生管理系统,二.牛逼一点的大神则用数据库+swing来 ...

  4. Google Code项目代码托管网站上Git版本控制系统使用简明教程

    作为一个著名的在线项目代码托管网站,Google Code目前主要支持三种版本控制系统,分别为Git, Mercurial和 Subversion.Subversion即SVN相信大家都已经熟知了,这 ...

  5. EDM推送

    一.需求描述:        日前,做了一个发送客户账单的功能,邮件模板采用自定义,生成vm文件,保存至redis,    采用jodd-mail发送邮件,查询用户账单数据,账单明细,缓存加载模板并渲 ...

  6. [Machine Learning] Probabilistic Graphical Models:一、Introduction and Overview(1、Overview and Motivation)

    一.PGM用来做什么 1.  医学诊断:从各种病症分析病人得了什么病,该用什么手段治疗 2.  图像分割:从一张百万像素级的图片中分析每个像素点对应的是什么东西 两个共同点:(1)有非常多不同的输入变 ...

  7. Setup VSFTPD Server with Virtual Users On CentOS, RHEL, Scientific Linux 6.5/6.4/6.3

    We have already shown you How to Setup VSFTPD Server on CentOS 6.5/6.4 in our previous article. In t ...

  8. PHP IP互换数字[转]

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. 17173php招聘

    学历要求:大专工作经历:4年↑薪资待遇:面议工作地点:北京市 资深PHP工程师岗位职责\\\"1.独立负责公司互联网产品的开发与测试2.主导负责相关系统维护,确保系统运行稳定可靠3.主导推动 ...

  10. WPF布局容器综合展示

    Border控件,以及几个重要要的属性:Background:背景的 Brush 对象BorderBrush:用来绘制边框BorderThickness: Border 边框的宽度,设置边框每一边的线 ...