<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.2.3" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>
<channel>
	<title>Comments on: Managed Extensibility Framework (MEF) at a Glance</title>
	<link>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html</link>
	<description>still believes in coding to make dreams come true</description>
	<pubDate>Sat, 04 Feb 2012 19:37:18 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.2.3</generator>

	<item>
		<title>By: Sidar Ok</title>
		<link>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html#comment-6494</link>
		<dc:creator>Sidar Ok</dc:creator>
		<pubDate>Wed, 20 May 2009 22:03:37 +0000</pubDate>
		<guid>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html#comment-6494</guid>
		<description>Hi Gavin,

This was written for Preview 1, and MEF has done a great progress since then. Per your assertions : 

&gt;&gt;  The composite pattern is clunky, so you have to write setup code for composing the parts in batches which I find silly. Surely you can inject a configuration. Most IoC’s do this. Why do we need compiled code. 

I personally favor compiled code, even though I attempted this in the past : http://www.sidarok.com/web/blog/content/2008/07/14/building-a-configuration-binder-for-mef-with-poco-support.html . You can provide your config - based parts with external configuration using Export Providers in the latest drop of MEF. (I guess there is already one in MEF contrib but not quite sure) 

&gt;&gt; Why is there no proxy for imports? How do I intercept? 

Because MEF gives you the composition hook, and you provide your logic to customize container behavior. IMHO this is done best again with Export Providers : http://codebetter.com/blogs/glenn.block/archive/2008/12/25/using-exportprovider-to-customize-container-behavior-part-i.aspx 

&gt;&gt; Why do I have to attribute contructors, surely you could reflect parameters, and based on their types you could resolve the params, just like Castle Windsor does. 

http://codebetter.com/blogs/glenn.block/archive/2009/04/27/poco-mef-and-custom-type-systems-are-you-ready-to-take-the-red-pill.aspx Be sure to read the comments especially.. 

&gt;&gt; What about ordering within the imports? Everything uses collections, you can setup cardinality but nothing so far suggests priority.

There is a MetaData that comes along with them, and you can amend this per your needs. 

&gt;&gt; I know the MEF != IoC/DI, but there is alot they could have borrowed, instead of building this clunky, invasive attributed monster!

You can do IoC with MEF, or use existing IoC to host your extensions ( http://blogs.msdn.com/nblumhardt/archive/2009/03/16/hosting-mef-extensions-in-an-ioc-container.aspx ) but MEF indeed takes care of a lot more different things as well ( http://www.sidarok.com/web/blog/content/2008/09/26/what-is-this-managed-extensibility-framework-thing-all-about.html )

Hope this all make sense. Sorry if caused any confusion.</description>
		<content:encoded><![CDATA[<p>Hi Gavin,</p>
<p>This was written for Preview 1, and MEF has done a great progress since then. Per your assertions : </p>
<p>>>  The composite pattern is clunky, so you have to write setup code for composing the parts in batches which I find silly. Surely you can inject a configuration. Most IoC’s do this. Why do we need compiled code. </p>
<p>I personally favor compiled code, even though I attempted this in the past : <a href="http://www.sidarok.com/web/blog/content/2008/07/14/building-a-configuration-binder-for-mef-with-poco-support.html" rel="nofollow" >http://www.sidarok.com/web/blog/content/2008/07/14/building-a-configuration-binder-for-mef-with-poco-support.html</a> . You can provide your config - based parts with external configuration using Export Providers in the latest drop of MEF. (I guess there is already one in MEF contrib but not quite sure) </p>
<p>>> Why is there no proxy for imports? How do I intercept? </p>
<p>Because MEF gives you the composition hook, and you provide your logic to customize container behavior. IMHO this is done best again with Export Providers : <a href="http://codebetter.com/blogs/glenn.block/archive/2008/12/25/using-exportprovider-to-customize-container-behavior-part-i.aspx" rel="nofollow" onclick="javascript:pageTracker._trackPageview('/outbound/comment/http://codebetter.com/blogs/glenn.block/archive/2008/12/25/using-exportprovider-to-customize-container-behavior-part-i.aspx');">http://codebetter.com/blogs/glenn.block/archive/2008/12/25/using-exportprovider-to-customize-container-behavior-part-i.aspx</a> </p>
<p>>> Why do I have to attribute contructors, surely you could reflect parameters, and based on their types you could resolve the params, just like Castle Windsor does. </p>
<p><a href="http://codebetter.com/blogs/glenn.block/archive/2009/04/27/poco-mef-and-custom-type-systems-are-you-ready-to-take-the-red-pill.aspx" rel="nofollow" onclick="javascript:pageTracker._trackPageview('/outbound/comment/http://codebetter.com/blogs/glenn.block/archive/2009/04/27/poco-mef-and-custom-type-systems-are-you-ready-to-take-the-red-pill.aspx');">http://codebetter.com/blogs/glenn.block/archive/2009/04/27/poco-mef-and-custom-type-systems-are-you-ready-to-take-the-red-pill.aspx</a> Be sure to read the comments especially.. </p>
<p>>> What about ordering within the imports? Everything uses collections, you can setup cardinality but nothing so far suggests priority.</p>
<p>There is a MetaData that comes along with them, and you can amend this per your needs. </p>
<p>>> I know the MEF != IoC/DI, but there is alot they could have borrowed, instead of building this clunky, invasive attributed monster!</p>
<p>You can do IoC with MEF, or use existing IoC to host your extensions ( <a href="http://blogs.msdn.com/nblumhardt/archive/2009/03/16/hosting-mef-extensions-in-an-ioc-container.aspx" rel="nofollow" onclick="javascript:pageTracker._trackPageview('/outbound/comment/http://blogs.msdn.com/nblumhardt/archive/2009/03/16/hosting-mef-extensions-in-an-ioc-container.aspx');">http://blogs.msdn.com/nblumhardt/archive/2009/03/16/hosting-mef-extensions-in-an-ioc-container.aspx</a> ) but MEF indeed takes care of a lot more different things as well ( <a href="http://www.sidarok.com/web/blog/content/2008/09/26/what-is-this-managed-extensibility-framework-thing-all-about.html" rel="nofollow" >http://www.sidarok.com/web/blog/content/2008/09/26/what-is-this-managed-extensibility-framework-thing-all-about.html</a> )</p>
<p>Hope this all make sense. Sorry if caused any confusion.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gavin</title>
		<link>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html#comment-6484</link>
		<dc:creator>Gavin</dc:creator>
		<pubDate>Tue, 19 May 2009 13:05:28 +0000</pubDate>
		<guid>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html#comment-6484</guid>
		<description>Hi Sidar, I am glad you find the attribution very intrusive, I have played around with it and think it smells for the following reasons:

 - The composite pattern is clunky, so you have to write setup code for composing the parts in batches which I find silly. Surely you can inject a configuration. Most IoC's do this. Why do we need compiled code.

 - Why is there no proxy for imports? How do I intercept?

 - What about ordering within the imports? Everything uses collections, you can setup cardinality but nothing so far suggests priority.

 - Why do I have to attribute contructors, surely you could reflect parameters, and based on their types you could resolve the params, just like Castle Windsor does. 

I know the MEF != IoC/DI, but there is alot they could have borrowed, instead of building this clunky, invasive attributed monster!

I would love you hear your comments on this.</description>
		<content:encoded><![CDATA[<p>Hi Sidar, I am glad you find the attribution very intrusive, I have played around with it and think it smells for the following reasons:</p>
<p> - The composite pattern is clunky, so you have to write setup code for composing the parts in batches which I find silly. Surely you can inject a configuration. Most IoC&#8217;s do this. Why do we need compiled code.</p>
<p> - Why is there no proxy for imports? How do I intercept?</p>
<p> - What about ordering within the imports? Everything uses collections, you can setup cardinality but nothing so far suggests priority.</p>
<p> - Why do I have to attribute contructors, surely you could reflect parameters, and based on their types you could resolve the params, just like Castle Windsor does. </p>
<p>I know the MEF != IoC/DI, but there is alot they could have borrowed, instead of building this clunky, invasive attributed monster!</p>
<p>I would love you hear your comments on this.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: MEF &#171; Tales from a Trading Desk</title>
		<link>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html#comment-4926</link>
		<dc:creator>MEF &#171; Tales from a Trading Desk</dc:creator>
		<pubDate>Wed, 24 Dec 2008 20:41:35 +0000</pubDate>
		<guid>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html#comment-4926</guid>
		<description>[...] the test of time. &#8220;. I suppose the obvious question is, will Unity continue to evolve once MEF is released? Possibly related posts: (automatically generated)CAB: Patterns and Practices LabBids [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] the test of time. &#8220;. I suppose the obvious question is, will Unity continue to evolve once MEF is released? Possibly related posts: (automatically generated)CAB: Patterns and Practices LabBids [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: 8am and The Managed Extensibility Framework - Casey Charlton - Insane World</title>
		<link>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html#comment-1707</link>
		<dc:creator>8am and The Managed Extensibility Framework - Casey Charlton - Insane World</dc:creator>
		<pubDate>Tue, 30 Sep 2008 06:51:53 +0000</pubDate>
		<guid>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html#comment-1707</guid>
		<description>[...] Microsoft is the Managed Extensibility Framework. I know this is a good thing, because Ayende and Sidar blogged and told me it [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] Microsoft is the Managed Extensibility Framework. I know this is a good thing, because Ayende and Sidar blogged and told me it [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: What is this Managed Extensibility Framework thing all about ? &#124; Sidar Ok Technical Blog !</title>
		<link>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html#comment-1609</link>
		<dc:creator>What is this Managed Extensibility Framework thing all about ? &#124; Sidar Ok Technical Blog !</dc:creator>
		<pubDate>Fri, 26 Sep 2008 00:39:36 +0000</pubDate>
		<guid>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html#comment-1609</guid>
		<description>[...] this is not another introduction post. Being one of the earliest adopter of MEF, I started to see a great confusion around what MEF is, [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] this is not another introduction post. Being one of the earliest adopter of MEF, I started to see a great confusion around what MEF is, [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Exploring MEF Extensibility Points &#124; Sidar Ok Technical Blog !</title>
		<link>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html#comment-422</link>
		<dc:creator>Exploring MEF Extensibility Points &#124; Sidar Ok Technical Blog !</dc:creator>
		<pubDate>Sat, 05 Jul 2008 14:15:10 +0000</pubDate>
		<guid>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html#comment-422</guid>
		<description>[...] Ok Managed Extensibility Framework (MEF), Design Patterns, Dependency Injection, .NET 3.5  After I had a chance to dance with MEF, I wanted to go a step further and create my own logic to Bind the dependencies, and integrate it [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] Ok Managed Extensibility Framework (MEF), Design Patterns, Dependency Injection, .NET 3.5  After I had a chance to dance with MEF, I wanted to go a step further and create my own logic to Bind the dependencies, and integrate it [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: WSDAC#8 - MVP MVC and everything in-between - Service Endpoint</title>
		<link>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html#comment-346</link>
		<dc:creator>WSDAC#8 - MVP MVC and everything in-between - Service Endpoint</dc:creator>
		<pubDate>Wed, 25 Jun 2008 03:02:06 +0000</pubDate>
		<guid>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html#comment-346</guid>
		<description>[...] Chris Alcock Managed Extensibility Framework (MEF) at a Glance - Sidar Ok explores the Managed Extensibility Framework CTP, working through the initial stages of [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] Chris Alcock Managed Extensibility Framework (MEF) at a Glance - Sidar Ok explores the Managed Extensibility Framework CTP, working through the initial stages of [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Reflective Perspective - Chris Alcock &#187; The Morning Brew #116</title>
		<link>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html#comment-289</link>
		<dc:creator>Reflective Perspective - Chris Alcock &#187; The Morning Brew #116</dc:creator>
		<pubDate>Tue, 17 Jun 2008 06:37:34 +0000</pubDate>
		<guid>http://www.sidarok.com/web/blog/content/2008/06/16/managed-extensibility-framework-mef-at-a-glance.html#comment-289</guid>
		<description>[...] Managed Extensibility Framework (MEF) at a Glance - Sidar Ok explores the Managed Extensibility Framework CTP, working through the initial stages of getting things working as intended. [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] Managed Extensibility Framework (MEF) at a Glance - Sidar Ok explores the Managed Extensibility Framework CTP, working through the initial stages of getting things working as intended. [&#8230;]</p>
]]></content:encoded>
	</item>
</channel>
</rss>

