<?xml version="1.0" encoding="iso-8859-1"?>
<rss version="2.0">
  <channel>
    <title>DotNetKicks.com - published patterns stories</title>
    <description>the latest published patterns stories from DotNetKicks.com</description>
    <link>http://www.dotnetkicks.com/</link>
    <language>en-us</language>
    <copyright>Atweb Publishing Ltd.</copyright>
    <docs>http://backend.userland.com/rss</docs>
    <generator>DotNetKicks.com - .NET links, community driven</generator>
    <ttl>30</ttl>
    <item>
      <title>To Boldly Ask IT for Development Work</title>
      <description>Are you ever mystified by the way that, in Science-Fiction films, the crew of space-ships are able to reprogram their ships' computers in order to respond to emergencies, needing no more than a brief klip...klop...klip on the keyboard to effect a huge software change. Phil Factor has found real-life in IT to be so different, and so he wonders if there a more realistic way that one might imagine IT's contribution to Space adventures. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.simple-talk.com%2fopinion%2fopinion-pieces%2fto-boldly-ask-it-for-development-work%2f"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.simple-talk.com%2fopinion%2fopinion-pieces%2fto-boldly-ask-it-for-development-work%2f" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/To_Boldly_Ask_IT_for_Development_Work</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/To_Boldly_Ask_IT_for_Development_Work</guid>
      <pubDate>Mon, 29 Jun 2009 10:10:47 GMT</pubDate>
    </item>
    <item>
      <title>Learning the Decorator Pattern </title>
      <description>Taking at how we can use the Decorator Pattern in our application.  The decorator pattern is a structural pattern which allows you to attach new or additional actions to an object dynamically. Using the decorator pattern provides a very clean and flexible alternative to subclassing (via inheritance) your object and thus creating an unwanted inheritance tree &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.dimecasts.net%2fCasts%2fCastDetails%2f120"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.dimecasts.net%2fCasts%2fCastDetails%2f120" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/architecture/Learning_the_Decorator_Pattern</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/architecture/Learning_the_Decorator_Pattern</guid>
      <pubDate>Tue, 23 Jun 2009 15:15:00 GMT</pubDate>
    </item>
    <item>
      <title>Adventures in MVVM -- Ball of Mud vs MVVM</title>
      <description>A demo that I added to my MVVM talk is one that compares a "Ball of Mud" application with a componentized MVVM application with the exact same set of features.  I do this to contrast a messy, un-testable work of code to a cleanly separated, testable work.  The application I chose to write is a Twitter search application in WPF.  When you download the code, you will see two folders: "BallOfMud" and "MVVM". &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fhouseofbilz.com%2farchive%2f2009%2f06%2f19%2fadventures-in-mvvm----ball-of-mud-vs-mvvm.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fhouseofbilz.com%2farchive%2f2009%2f06%2f19%2fadventures-in-mvvm----ball-of-mud-vs-mvvm.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/Adventures_in_MVVM_Ball_of_Mud_vs_MVVM</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/Adventures_in_MVVM_Ball_of_Mud_vs_MVVM</guid>
      <pubDate>Sat, 20 Jun 2009 02:39:39 GMT</pubDate>
    </item>
    <item>
      <title>My baby steps to PostSharp 1.0</title>
      <description>So. you downloaded PostSharp 1.0 and you installed it and are wondering. "What's next?".

Well my friends, let me walk you through the first steps of PostSharp. What could we do that would be simple enough? Hummm. what about writing to a debug window? That sounds simple enough! Let's start. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fblog.decayingcode.com%2f2009%2f06%2fmy-baby-steps-to-postsharp-10.html"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fblog.decayingcode.com%2f2009%2f06%2fmy-baby-steps-to-postsharp-10.html" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/My_baby_steps_to_PostSharp_1_0</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/My_baby_steps_to_PostSharp_1_0</guid>
      <pubDate>Sun, 14 Jun 2009 03:15:20 GMT</pubDate>
    </item>
    <item>
      <title>Design Patterns and Dependency Injection</title>
      <description>Brian Prince and James Bender presented the following topics. (entry contains resources &amp;amp; contact information)

Software Patterns by Brian Price  &amp;amp; How I Learned To Love Dependency Injection by James Bender  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwebdevdotnet.blogspot.com%2f2009%2f06%2fdesign-patterns-and-dependency.html"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwebdevdotnet.blogspot.com%2f2009%2f06%2fdesign-patterns-and-dependency.html" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/Design_Patterns_and_Dependency_Injection</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/Design_Patterns_and_Dependency_Injection</guid>
      <pubDate>Thu, 11 Jun 2009 18:41:52 GMT</pubDate>
    </item>
    <item>
      <title>Getting up and Running with Microsoft BizTalk ESB Toolkit 2.0</title>
      <description>Microsoft BizTalk ESB Toolkit 2.0 released to web yesterday evening, and if you have not been following the earlier CTPs, now is a great time to get on board. The name has been changed, a support model has been introduced, and official MSDN forums for the Toolkit have been made available. Since there are not any VMs that you can simply download and get up and running with quickly, I decided to put together a quick and dirty installation guide for installing the Toolkit on a single server in a 32-bit virtualized environment for evaluation purposes. What follows are the steps to get you from 0 to ESB with all of the sample applications. 
 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.quicklearn.com%2fblog%2fpost%2fGetting-up-and-Running-with-BizTalk-ESB-Toolkit-20.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.quicklearn.com%2fblog%2fpost%2fGetting-up-and-Running-with-BizTalk-ESB-Toolkit-20.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/Getting_up_and_Running_with_Microsoft_BizTalk_ESB_Toolkit_2_0</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/Getting_up_and_Running_with_Microsoft_BizTalk_ESB_Toolkit_2_0</guid>
      <pubDate>Wed, 10 Jun 2009 16:13:52 GMT</pubDate>
    </item>
    <item>
      <title>Observer Design Pattern with C#</title>
      <description>The observer pattern is a design pattern that defines a link between objects so that when one object's state changes, all dependent objects are updated automatically. This pattern allows communication between objects in a loosely coupled manner. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.blackwasp.co.uk%2fObserver.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.blackwasp.co.uk%2fObserver.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/Observer_Design_Pattern_with_C</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/Observer_Design_Pattern_with_C</guid>
      <pubDate>Mon, 08 Jun 2009 21:37:35 GMT</pubDate>
    </item>
    <item>
      <title>Can you justify your actions with regards to this pattern? </title>
      <description>Probably the most common problem with unintended complexity in software is the unthinking application of patterns. I see a lot more code that has became more complex through that practice than code that has became simpler.

David Wheeler said: "All problems in computer science can be solved by another level of indirection;" However, we tend to forget the extra bit that Kevlin Henney's tacked at the end, &amp;quot;...except for the problem of too many layers of indirection.&amp;quot;

 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fayende.com%2fBlog%2farchive%2f2009%2f05%2f21%2fcan-you-justify-your-actions-with-regards-to-this-pattern.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fayende.com%2fBlog%2farchive%2f2009%2f05%2f21%2fcan-you-justify-your-actions-with-regards-to-this-pattern.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/Can_you_justify_your_actions_with_regards_to_this_pattern</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/Can_you_justify_your_actions_with_regards_to_this_pattern</guid>
      <pubDate>Mon, 08 Jun 2009 03:46:42 GMT</pubDate>
    </item>
    <item>
      <title>Activity diagrams</title>
      <description>Activity diagrams describe the workflow behavior of a system. Activity diagrams are similar to state diagrams because activities are the state of doing something. The diagrams describe the state of activities by showing the sequence of activities performed. Activity diagrams can show ac &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2ftechnoblogy.net%2fpost%2fActivity-diagrams.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2ftechnoblogy.net%2fpost%2fActivity-diagrams.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/Activity_diagrams</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/Activity_diagrams</guid>
      <pubDate>Sat, 06 Jun 2009 07:31:55 GMT</pubDate>
    </item>
    <item>
      <title>The Waterfall Model</title>
      <description>Waterfall model in software engineering &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2ftechnoblogy.net%2fpost%2fThe-Waterfall-Model.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2ftechnoblogy.net%2fpost%2fThe-Waterfall-Model.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/The_Waterfall_Model</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/The_Waterfall_Model</guid>
      <pubDate>Sat, 06 Jun 2009 06:09:44 GMT</pubDate>
    </item>
    <item>
      <title>Gantt Charts</title>
      <description>Gantt charts provide a standard format for displaying project schedule information by listing project activities and their corresponding start and finish dates in a calendar format &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2ftechnoblogy.net%2fpost%2fGantt-Charts.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2ftechnoblogy.net%2fpost%2fGantt-Charts.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/Gantt_Charts</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/Gantt_Charts</guid>
      <pubDate>Sat, 06 Jun 2009 06:09:26 GMT</pubDate>
    </item>
    <item>
      <title>Should We Return Null From Our Methods?</title>
      <description>I read a interesting article recently about the potential perils of Null Check Hell. The author's suggestion? Stop allowing any of your methods to return nulls, ever . No nulls returned, no null checks necessary. Problem solved, right? &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fleedumond.com%2fblog%2fshould-we-return-null-from-our-methods%2f"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fleedumond.com%2fblog%2fshould-we-return-null-from-our-methods%2f" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/Should_We_Return_Null_From_Our_Methods</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/Should_We_Return_Null_From_Our_Methods</guid>
      <pubDate>Sat, 06 Jun 2009 18:15:06 GMT</pubDate>
    </item>
    <item>
      <title>The Stripper Pattern </title>
      <description> In 2006 (if I can recall correctly), Greg Young and I discussed the concept of the Stripper Pattern, we never really had the chance to formulate it into a real pattern, but we kept discussing this whenever we met (and had beer available). 

This post is about the stripper pattern, and there is a good reason why I selected the accompanying image for this post, it is the spookiest stripper image that I can put in the blog. Because the Stripper Pattern is an anti pattern.
 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fayende.com%2fBlog%2farchive%2f2009%2f05%2f14%2fthe-stripper-pattern.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fayende.com%2fBlog%2farchive%2f2009%2f05%2f14%2fthe-stripper-pattern.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/The_Stripper_Pattern</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/The_Stripper_Pattern</guid>
      <pubDate>Fri, 05 Jun 2009 16:41:20 GMT</pubDate>
    </item>
    <item>
      <title>What is Continuous&amp;#160;Integration - Wiki</title>
      <description>Continuous Integration (CI) in software development is a set of practices and principles that speed up delivery of software projects and increase quality of their deliverables.

Simply put, Continuous Integration takes a lot of mundane and boring things away from the process of software development, while letting developers to concentrate on more enjoyable and creative tasks... &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fabdullin.com%2fwiki%2fcontinuous-integration.html"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fabdullin.com%2fwiki%2fcontinuous-integration.html" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/What_is_Continuous Integration_Wiki</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/What_is_Continuous Integration_Wiki</guid>
      <pubDate>Thu, 04 Jun 2009 17:16:34 GMT</pubDate>
    </item>
    <item>
      <title>StringDictionary class adds the key as lower-cased</title>
      <description>Hi there,

In a project I'm currently developing, we used the StringDictionary (In the System.Collections.Specialized namespace) class frequently for stored key value pairs. I noticed that all my keys were lower-cased.

So when checking out the Add method with Reflector, I found out that the key is lower-cased.

public virtual void Add(string key, string value)
{
    if (key == null)
    {
        throw new ArgumentNullException(&amp;quot;key&amp;quot;);
    }
    this.contents.Add(key.ToLower(CultureInfo.InvariantCulture), value);
}

As described on MSDN: The key is handled in a case-insensitive manner; it is translated to lowercase before it is used with the string dictionary.

So if you want to use a string as a key and want that key string representation exactly to the same as you stored it, that use the following:

// Use the Dictionary&amp;lt;string, string&amp;gt; instead of the StringDictionary, since StringDictionary stores it's key as case-insensitive
Dictionary&amp;lt;string, string&amp;gt; items = new Dictionary&amp;lt;string, string&amp;gt;();

Nothing fancy, all standard .NET functionality, but this post is written as a reminder for myself and for you as a visitor of my blog.

Hope this is usefull!

gr,

Robbert  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.hockblogs.net%2fpost%2f2009%2f05%2fStringDictionary-class-adds-the-key-as-lower-cased.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.hockblogs.net%2fpost%2f2009%2f05%2fStringDictionary-class-adds-the-key-as-lower-cased.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/StringDictionary_class_adds_the_key_as_lower_cased</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/StringDictionary_class_adds_the_key_as_lower_cased</guid>
      <pubDate>Tue, 02 Jun 2009 06:58:17 GMT</pubDate>
    </item>
    <item>
      <title>Proxy design pattern demonstration</title>
      <description>This code demonstrates the &amp;quot;Proxy&amp;quot; Design Pattern.
The example shows delay of the expensive operation of loading a file from disk until the result of that operation is actually needed. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.coderun.com%2fide%2f%3fp%3dProxy_Design_Pattern"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.coderun.com%2fide%2f%3fp%3dProxy_Design_Pattern" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/Proxy_design_pattern_demonstration</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/Proxy_design_pattern_demonstration</guid>
      <pubDate>Mon, 01 Jun 2009 08:30:28 GMT</pubDate>
    </item>
    <item>
      <title>Cross-cutting&amp;#160;concern - Wiki</title>
      <description>In software development cross-cutting concerns are logical parts of the program that affect (crosscut) other concerns or modules.

Examples of cross-cutting concerns are... &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fabdullin.com%2fwiki%2fcross-cutting-concern.html"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fabdullin.com%2fwiki%2fcross-cutting-concern.html" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/Cross_cutting concern_Wiki</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/Cross_cutting concern_Wiki</guid>
      <pubDate>Mon, 01 Jun 2009 05:05:24 GMT</pubDate>
    </item>
    <item>
      <title> LINQ Expression Trees and the Specification Pattern</title>
      <description>A very interesting article about DDD. David discusses implementing the Specification Pattern via LINQ's Expression type... &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fblogs.rev-net.com%2fddewinter%2f2009%2f05%2f31%2flinq-expression-trees-and-the-specification-pattern%2f"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fblogs.rev-net.com%2fddewinter%2f2009%2f05%2f31%2flinq-expression-trees-and-the-specification-pattern%2f" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/architecture/LINQ_Expression_Trees_and_the_Specification_Pattern</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/architecture/LINQ_Expression_Trees_and_the_Specification_Pattern</guid>
      <pubDate>Mon, 01 Jun 2009 00:55:37 GMT</pubDate>
    </item>
    <item>
      <title>csharp abstract factory design pattern</title>
      <description>The intent of the pattern, as described in Design Patterns, is to &amp;quot;Provide an interface for creating families of related or dependent objects without specifying their concrete classes.&amp;quot;. Online example with source code. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.coderun.com%2fide%2f%3fp%3dcsharp-abstract-factory"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.coderun.com%2fide%2f%3fp%3dcsharp-abstract-factory" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/csharp_abstract_factory_design_pattern</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/csharp_abstract_factory_design_pattern</guid>
      <pubDate>Sun, 31 May 2009 00:42:24 GMT</pubDate>
    </item>
    <item>
      <title>Separate Domain from Presentation - part III</title>
      <description>Last time we explained how to refactor towards MVP - Supervising Controller pattern.
This post will:
1. Wire-up events communication between the view and the controller (presenter). 
2. Separate concerns using interface between the view and the controller (presenter)
3. Suggest next steps. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2furilavi.blogspot.com%2f2009%2f05%2fseparate-domain-from-presentation-part_30.html"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2furilavi.blogspot.com%2f2009%2f05%2fseparate-domain-from-presentation-part_30.html" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/Separate_Domain_from_Presentation_part_III</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/Separate_Domain_from_Presentation_part_III</guid>
      <pubDate>Sat, 30 May 2009 21:14:34 GMT</pubDate>
    </item>
    <item>
      <title>The Greatest Exception Handling WTF?!? of All Time</title>
      <description>The Exception object has ONE purpose and ONE purpose only - to represent a runtime error, nothing more. Exceptions should never be used for purposes for which they were not intended -- or you could end up with this monstrosity... &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fleedumond.com%2fblog%2fthe-greatest-exception-handling-wtf-of-all-time%2f"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fleedumond.com%2fblog%2fthe-greatest-exception-handling-wtf-of-all-time%2f" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/The_Greatest_Exception_Handling_WTF_of_All_Time</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/The_Greatest_Exception_Handling_WTF_of_All_Time</guid>
      <pubDate>Thu, 28 May 2009 10:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Creating Artificial Life with Cellular Automata in C# .NET</title>
      <description>Cellular automata is a model of artificial intelligence involving the creation of single-celled programmatic life forms. Learn how easy it is to create artificial life right from your computer, using a little C# .NET and a few design patterns. In fact, Wolfram Alpha is based, in part, from this very science! &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.primaryobjects.com%2fCMS%2fArticle106.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.primaryobjects.com%2fCMS%2fArticle106.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/Creating_Artificial_Life_with_Cellular_Automata_in_C_NET</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/Creating_Artificial_Life_with_Cellular_Automata_in_C_NET</guid>
      <pubDate>Tue, 26 May 2009 16:17:45 GMT</pubDate>
    </item>
    <item>
      <title>Learning the Observer Pattern w/ Callbacks</title>
      <description>Taking another look at how we can use the Observer Pattern in our application, but this time we will implement the pattern using call backs and events.

The Observer pattern allows you to define a one-to-many relationship inside your application where the parent object (the one) has the ability to notify the child objects (the many) of any state change. You can utilize this pattern to make sure that a set of objects are keep in order when there behavior needs to change based on the state of your application. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.dimecasts.net%2fCasts%2fCastDetails%2f112"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.dimecasts.net%2fCasts%2fCastDetails%2f112" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/architecture/Learning_the_Observer_Pattern_w_Callbacks</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/architecture/Learning_the_Observer_Pattern_w_Callbacks</guid>
      <pubDate>Fri, 22 May 2009 18:06:09 GMT</pubDate>
    </item>
    <item>
      <title>Separate Domain from Presentation - part II</title>
      <description>This is a second post in the series of posts about "Separate Domain from Presentation" Refactoring. 

Previous Posts: Separate Domain from Presentation - part I.

The post describes additional refactoring steps towards MVP - Supervising Controller pattern. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2furilavi.blogspot.com%2f2009%2f05%2fseparate-domain-from-presentation-part.html"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2furilavi.blogspot.com%2f2009%2f05%2fseparate-domain-from-presentation-part.html" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/Separate_Domain_from_Presentation_part_II</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/Separate_Domain_from_Presentation_part_II</guid>
      <pubDate>Wed, 20 May 2009 04:10:36 GMT</pubDate>
    </item>
    <item>
      <title>Unity InterfaceInterceptor doesn't support interface inheritance</title>
      <description>The InterfaceInterceptor from Unity (Enterprise Library) is broken because it doesn't support interface inheritance. This post contains the solution. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwww.timcools.net%2fpost%2f2009%2f05%2f15%2fUnity-InterfaceInterceptor-doesnt-support-interface-inheritance.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwww.timcools.net%2fpost%2f2009%2f05%2f15%2fUnity-InterfaceInterceptor-doesnt-support-interface-inheritance.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
</description>
      <link>http://www.dotnetkicks.com/patterns/Unity_InterfaceInterceptor_doesn_t_support_interface_inheritance</link>
      <guid isPermaLink="true">http://www.dotnetkicks.com/patterns/Unity_InterfaceInterceptor_doesn_t_support_interface_inheritance</guid>
      <pubDate>Fri, 15 May 2009 06:37:19 GMT</pubDate>
    </item>
  </channel>
</rss>