<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Being Scott Densmore : Unity</title><link>http://blogs.msdn.com/scottdensmore/archive/tags/Unity/default.aspx</link><description>Tags: Unity</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Unity Lives! Get your copy today.</title><link>http://blogs.msdn.com/scottdensmore/archive/2008/04/04/unity-lives-get-your-copy-today.aspx</link><pubDate>Sat, 05 Apr 2008 02:19:19 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8358785</guid><dc:creator>scottdensmore</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/scottdensmore/comments/8358785.aspx</comments><wfw:commentRss>http://blogs.msdn.com/scottdensmore/commentrss.aspx?PostID=8358785</wfw:commentRss><description>&lt;p&gt;
Awesome work by the entire team!  You can get it from MSDN &lt;a href="http://msdn2.microsoft.com/en-us/library/cc468366.aspx"&gt;here&lt;/a&gt; or from &lt;a href="http://www.codeplex.com/unity"&gt;CodePlex&lt;/a&gt;.  Please discuss and provide feedback so we can make this even better. Objects of the code Unite! [I know, corny].
&lt;/p&gt;&lt;p&gt;
Also:  I have built an extension to Unity that i will be blogging about over the weekend.  This is an extension to do Interception (ala PIAB) that I ported from the ObjectBuilder work that Brad and I did.   
&lt;/p&gt;&lt;p&gt;
Enjoy!
&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8358785" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/scottdensmore/archive/tags/Visual+Studio/default.aspx">Visual Studio</category><category domain="http://blogs.msdn.com/scottdensmore/archive/tags/Unity/default.aspx">Unity</category><category domain="http://blogs.msdn.com/scottdensmore/archive/tags/patterns+_26002300_38_3B00_+practices/default.aspx">patterns &amp;#38; practices</category></item><item><title>Unity available on CodePlex</title><link>http://blogs.msdn.com/scottdensmore/archive/2008/02/12/unity-available-on-codeplex.aspx</link><pubDate>Wed, 13 Feb 2008 03:14:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7657612</guid><dc:creator>scottdensmore</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/scottdensmore/comments/7657612.aspx</comments><wfw:commentRss>http://blogs.msdn.com/scottdensmore/commentrss.aspx?PostID=7657612</wfw:commentRss><description>&lt;p&gt;The team has done some great work to get this ready.  Please provide us feedback and track any issues.&lt;/p&gt;&lt;p&gt;I want to congratulate the team on their effort!&lt;/p&gt;&lt;p&gt;Get the bits and read about Unity &lt;a mce_href="http://www.codeplex.com/unity" href="http://www.codeplex.com/unity"&gt;here&lt;/a&gt;. &lt;/p&gt;&lt;!-- technorati tags start --&gt;&lt;p style="text-align:right;font-size:10px;"&gt;Technorati Tags: &lt;a rel="tag" href="http://www.technorati.com/tag/patterns%20&amp;amp;%20practices"&gt;patterns &amp;amp; practices&lt;/a&gt;, &lt;a mce_href="http://www.technorati.com/tag/Unity" rel="tag" href="http://www.technorati.com/tag/Unity"&gt;Unity&lt;/a&gt;&lt;/p&gt;&lt;!-- technorati tags end --&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7657612" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/scottdensmore/archive/tags/patterns+_2600_amp_3B00_+practices/default.aspx">patterns &amp;amp; practices</category><category domain="http://blogs.msdn.com/scottdensmore/archive/tags/Unity/default.aspx">Unity</category></item><item><title>Enterprise Library 4: Now with more Peace Love and Rock n' Roll</title><link>http://blogs.msdn.com/scottdensmore/archive/2008/01/31/enterprise-library-4-now-with-more-peace-love-and-rock-n-roll.aspx</link><pubDate>Thu, 31 Jan 2008 19:14:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7353052</guid><dc:creator>scottdensmore</dc:creator><slash:comments>6</slash:comments><comments>http://blogs.msdn.com/scottdensmore/comments/7353052.aspx</comments><wfw:commentRss>http://blogs.msdn.com/scottdensmore/commentrss.aspx?PostID=7353052</wfw:commentRss><description>&lt;P&gt;At the p&amp;amp;p Summit in November here in Redmond I gave a talk called "EntLib Refactored". This talk was started by my work done on the EntLib contrib project under the same name. What I wanted to do was make Enterprise Library smaller, simpler and easier to consume. My first attempt was to rewrite the blocks to not depend on Configuration. This was a great first stab, yet I found that what I really wanted was to reduce the size of things (which factoring out config did not do). What I wanted to do was get rid of the factories and use a Dependency Injection Container to wire up the objects. &lt;A href="http://bradwilson.typepad.com/" mce_href="http://bradwilson.typepad.com/"&gt;Brad Wilson&lt;/A&gt; and myself had been working on &lt;A href="http://www.codeplex.com/objectbuilder" mce_href="http://www.codeplex.com/objectbuilder"&gt;Object Builder 2&lt;/A&gt; and Containers on top of them to test it out. What we needed for Enterprise Library was a DI Container. &lt;/P&gt;
&lt;P&gt;After working on previous versions of Enterprise Library, we have learned that we needed Dependency Injection (DI) without knowing it and did it at the most basic level. We created factories: which is a form of simple DI. The problem this created is that each individual block was responsible for it's own configuration and configuration was buried at the bottom of the stack. We need to change around the model a bit to make the responsibility of configuration built into the DI Container and remove all that extra code from each block. &lt;/P&gt;
&lt;P&gt;Here is a picture of the old way: [BTW Enterprise Library Factory is buried at the bottom in the Core assembly that no one sees.] &lt;/P&gt;
&lt;P&gt;&lt;IMG height=401 alt="Old Way" hspace=4 src="http://blogs.msdn.com/blogfiles/scottdensmore/Old%20Way.jpg" width=377 vspace=4 border=1 mce_src="http://blogs.msdn.com/blogfiles/scottdensmore/Old%20Way.jpg"&gt; &lt;/P&gt;
&lt;P&gt;Here is the new way: &lt;/P&gt;
&lt;P&gt;&lt;IMG height=207 alt="New Way" hspace=4 src="http://blogs.msdn.com/blogfiles/scottdensmore/New%20Way.jpg" width=305 vspace=4 border=1 mce_src="http://blogs.msdn.com/blogfiles/scottdensmore/New%20Way.jpg"&gt; &lt;/P&gt;
&lt;P&gt;This looks better. Configuration is about the container. WAHOOOOOO! This means that building a block, using a block adding your extensions and having the configuration all comes through the container. This will make it easier for you to use Enterprise Library with Unity or your current DI container and allow us to deliver more cool things to you, the customer. Look for more on this later. &lt;/P&gt;
&lt;P&gt;That all sounds good, yet there is one lagging thing that needed to be addressed: the devil. Backwards compatibility is the work of the devil, and just like the devil, necessary. This is fueled by the fact that Enterprise Library has reached over a million downloads and not having a story would cause a lot of people to swing large baseball bats at us. &lt;STRONG&gt;&lt;U&gt;So the old way will still work working with factories so you can upgrade and migrate slowly. &lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Unity is a lightweight container built on top of the work of Object Builder 2, with heavy tweeks by &lt;A href="http://www.tavaresstudios.com/Blog/default.aspx" mce_href="http://www.tavaresstudios.com/Blog/default.aspx"&gt;Chris Tavaras&lt;/A&gt;. You can read more from &lt;A href="http://blogs.msdn.com/agile/" mce_href="http://blogs.msdn.com/agile/"&gt;Grigori&lt;/A&gt; and Chris on Unity. &lt;/P&gt;
&lt;P&gt;The funny story about Unity is the name. Grigori and I were trying to come up with a name for this DI block and mentioned it to Peter Provost when we settled on Unity (which is better than the Doohicky Application Block that was up on the board). Peter never thought we would get it pass legal... neener neener is what we said when we got it. He said "Enterprise Library 4: Now with more Peace love and Rock n' Roll". &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Doesn't Remind Me&lt;/STRONG&gt; from the album "Out Of Exile" by &lt;A href="http://www.google.com/search?q=%22Audioslave%22" mce_href="http://www.google.com/search?q=%22Audioslave%22"&gt;Audioslave&lt;/A&gt; &lt;/P&gt;&lt;!-- technorati tags start --&gt;
&lt;P style="FONT-SIZE: 10px; TEXT-ALIGN: right"&gt;Technorati Tags: &lt;A href="http://www.technorati.com/tag/Enterprise%20Library" rel=tag&gt;Enterprise Library&lt;/A&gt;, &lt;A href="http://www.technorati.com/tag/patterns%20&amp;amp;%20practices" rel=tag&gt;patterns &amp;amp; practices&lt;/A&gt;, &lt;A href="http://www.technorati.com/tag/Unity" rel=tag mce_href="http://www.technorati.com/tag/Unity"&gt;Unity&lt;/A&gt;&lt;/P&gt;&lt;!-- technorati tags end --&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7353052" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/scottdensmore/archive/tags/Enterprise+Library/default.aspx">Enterprise Library</category><category domain="http://blogs.msdn.com/scottdensmore/archive/tags/patterns+_2600_amp_3B00_+practices/default.aspx">patterns &amp;amp; practices</category><category domain="http://blogs.msdn.com/scottdensmore/archive/tags/Unity/default.aspx">Unity</category></item><item><title>Unity and Enterprise Library 4 Team</title><link>http://blogs.msdn.com/scottdensmore/archive/2008/01/29/unity-and-enterprise-library-4-team.aspx</link><pubDate>Wed, 30 Jan 2008 08:40:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7320162</guid><dc:creator>scottdensmore</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/scottdensmore/comments/7320162.aspx</comments><wfw:commentRss>http://blogs.msdn.com/scottdensmore/commentrss.aspx?PostID=7320162</wfw:commentRss><description>&lt;p&gt;
I am back on the team (and no I am not writing configuration again).
&lt;/p&gt;&lt;p&gt;
&lt;img src="http://blogs.msdn.com/blogfiles/scottdensmore/EntLib4-0Team-small.JPG" height="186" width="600" border="1" hspace="4" vspace="4" alt="Entlib4.0 Team" title="Entlib4.0 Team" /&gt;
&lt;/p&gt;&lt;p&gt;
Borrowed pic from &lt;a href="http://blogs.msdn.com/agile/archive/2008/01/22/who-we-are-introducing-entlib-4-0-and-unity-team.aspx"&gt;Grigori's original post.&lt;/a&gt;
&lt;/p&gt;
&lt;!-- technorati tags start --&gt;&lt;p style="text-align:right;font-size:10px;"&gt;Technorati Tags: &lt;a href="http://www.technorati.com/tag/Enterprise Library" rel="tag"&gt;Enterprise Library&lt;/a&gt;, &lt;a href="http://www.technorati.com/tag/patterns &amp;#38; practices" rel="tag"&gt;patterns &amp;#38; practices&lt;/a&gt;, &lt;a href="http://www.technorati.com/tag/Unity" rel="tag"&gt;Unity&lt;/a&gt;&lt;/p&gt;&lt;!-- technorati tags end --&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7320162" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/scottdensmore/archive/tags/Enterprise+Library/default.aspx">Enterprise Library</category><category domain="http://blogs.msdn.com/scottdensmore/archive/tags/Unity/default.aspx">Unity</category></item></channel></rss>