<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Joshua Bloch&#8217;s Builder Pattern in C#</title>
	<atom:link href="http://cdmckay.org/blog/2009/07/03/joshua-blochs-builder-pattern-in-csharp/feed/" rel="self" type="application/rss+xml" />
	<link>http://cdmckay.org/blog/2009/07/03/joshua-blochs-builder-pattern-in-csharp/</link>
	<description>Programming, Politics and Game Design</description>
	<lastBuildDate>Wed, 01 Sep 2010 19:51:26 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: cam</title>
		<link>http://cdmckay.org/blog/2009/07/03/joshua-blochs-builder-pattern-in-csharp/comment-page-1/#comment-377</link>
		<dc:creator>cam</dc:creator>
		<pubDate>Sun, 05 Jul 2009 20:32:54 +0000</pubDate>
		<guid isPermaLink="false">http://couchware.ca/blogs/cam/?p=610#comment-377</guid>
		<description>@Casper Bang:

1) I never said Bloch invented the pattern.  The reason I refer to it as Bloch&#039;s Builder pattern is because his pattern isn&#039;t exactly the same as the GoF pattern, and thus needs to be distinguished.

2) I disagree with this point.  Although property initializers make unnecessary some types of Builders, there are still things they can&#039;t do.  For example, you cannot create immutable objects with property initializers, but you can with a Builder.

3) The Builder patterns in this article, as well as Bloch&#039;s Java Builder, support chaining.</description>
		<content:encoded><![CDATA[<p>@Casper Bang:</p>
<p>1) I never said Bloch invented the pattern.  The reason I refer to it as Bloch&#8217;s Builder pattern is because his pattern isn&#8217;t exactly the same as the GoF pattern, and thus needs to be distinguished.</p>
<p>2) I disagree with this point.  Although property initializers make unnecessary some types of Builders, there are still things they can&#8217;t do.  For example, you cannot create immutable objects with property initializers, but you can with a Builder.</p>
<p>3) The Builder patterns in this article, as well as Bloch&#8217;s Java Builder, support chaining.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Casper Bang</title>
		<link>http://cdmckay.org/blog/2009/07/03/joshua-blochs-builder-pattern-in-csharp/comment-page-1/#comment-376</link>
		<dc:creator>Casper Bang</dc:creator>
		<pubDate>Sun, 05 Jul 2009 19:54:24 +0000</pubDate>
		<guid isPermaLink="false">http://couchware.ca/blogs/cam/?p=610#comment-376</guid>
		<description>1) Bloch did not invent that pattern. It&#039;s part of a whole arcade of patterns classified as &quot;creational&quot; and immortalized in the seminal book by the GoF in 87&#039;.

2) C# has property initializers, making the builder pattern somewhat unnecessary.

3) The builder pattern is defined by method chaining, surely nothing stands in the way of using setCalories(...).build() in C#?</description>
		<content:encoded><![CDATA[<p>1) Bloch did not invent that pattern. It&#8217;s part of a whole arcade of patterns classified as &#8220;creational&#8221; and immortalized in the seminal book by the GoF in 87&#8242;.</p>
<p>2) C# has property initializers, making the builder pattern somewhat unnecessary.</p>
<p>3) The builder pattern is defined by method chaining, surely nothing stands in the way of using setCalories(&#8230;).build() in C#?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: cam</title>
		<link>http://cdmckay.org/blog/2009/07/03/joshua-blochs-builder-pattern-in-csharp/comment-page-1/#comment-375</link>
		<dc:creator>cam</dc:creator>
		<pubDate>Sat, 04 Jul 2009 16:15:58 +0000</pubDate>
		<guid isPermaLink="false">http://couchware.ca/blogs/cam/?p=610#comment-375</guid>
		<description>@Vili: Which approach are you talking about?</description>
		<content:encoded><![CDATA[<p>@Vili: Which approach are you talking about?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: DotNetShoutout</title>
		<link>http://cdmckay.org/blog/2009/07/03/joshua-blochs-builder-pattern-in-csharp/comment-page-1/#comment-374</link>
		<dc:creator>DotNetShoutout</dc:creator>
		<pubDate>Sat, 04 Jul 2009 12:36:51 +0000</pubDate>
		<guid isPermaLink="false">http://couchware.ca/blogs/cam/?p=610#comment-374</guid>
		<description>&lt;strong&gt;Cameron McKay » Joshua Bloch’s Builder Pattern in C#...&lt;/strong&gt;

Thank you for submitting this cool story - Trackback from DotNetShoutout...</description>
		<content:encoded><![CDATA[<p><strong>Cameron McKay » Joshua Bloch’s Builder Pattern in C#&#8230;</strong></p>
<p>Thank you for submitting this cool story &#8211; Trackback from DotNetShoutout&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Vili</title>
		<link>http://cdmckay.org/blog/2009/07/03/joshua-blochs-builder-pattern-in-csharp/comment-page-1/#comment-373</link>
		<dc:creator>Vili</dc:creator>
		<pubDate>Sat, 04 Jul 2009 07:46:18 +0000</pubDate>
		<guid isPermaLink="false">http://couchware.ca/blogs/cam/?p=610#comment-373</guid>
		<description>Hi,

I think you could write your public properties with just set; and you would have a write-only property</description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>I think you could write your public properties with just set; and you would have a write-only property</p>
]]></content:encoded>
	</item>
</channel>
</rss>
