<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.2.2" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
	<title>Comments for Softonaut.com</title>
	<link>http://www.softonaut.com</link>
	<description>Exploring the space of software engineering</description>
	<pubDate>Fri, 29 Aug 2008 01:57:04 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.2.2</generator>

	<item>
		<title>Comment on Thoughts about Builder Pattern by lesbian her hose</title>
		<link>http://www.softonaut.com/2007/01/10/thoughts-about-builder-pattern/#comment-3942</link>
		<author>lesbian her hose</author>
		<pubDate>Sun, 24 Aug 2008 23:40:54 +0000</pubDate>
		<guid>http://www.softonaut.com/2007/01/10/thoughts-about-builder-pattern/#comment-3942</guid>
		<description>fuck hose lesbian &lt;a href="http://rollyo.com/lesbian-hose" rel="nofollow"&gt;teen hose lesbian&lt;/a&gt;</description>
		<content:encoded><![CDATA[<p>fuck hose lesbian <a href="http://rollyo.com/lesbian-hose" rel="nofollow">teen hose lesbian</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Thoughts about Builder Pattern by Xavi Miró</title>
		<link>http://www.softonaut.com/2007/01/10/thoughts-about-builder-pattern/#comment-3940</link>
		<author>Xavi Miró</author>
		<pubDate>Fri, 01 Aug 2008 18:19:23 +0000</pubDate>
		<guid>http://www.softonaut.com/2007/01/10/thoughts-about-builder-pattern/#comment-3940</guid>
		<description>@Mario,

   thank you! :-)

    I only had to complement your implementation. Although in general I prefer to avoid mutability in compile time, I haven't found a simple way to do it that didn't imply duplicating fields, so I chose this runtime check, which is a reasonable balance, in my opinion.

  Regards,

      Xavi</description>
		<content:encoded><![CDATA[<p>@Mario,</p>
<p>   thank you! <img src='http://www.softonaut.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>    I only had to complement your implementation. Although in general I prefer to avoid mutability in compile time, I haven&#8217;t found a simple way to do it that didn&#8217;t imply duplicating fields, so I chose this runtime check, which is a reasonable balance, in my opinion.</p>
<p>  Regards,</p>
<p>      Xavi</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on HOWTO: (Re-)Set the eth mapping by mojo</title>
		<link>http://www.softonaut.com/2008/03/16/howto-re-set-the-eth-mapping/#comment-3939</link>
		<author>mojo</author>
		<pubDate>Tue, 29 Jul 2008 16:00:24 +0000</pubDate>
		<guid>http://www.softonaut.com/2008/03/16/howto-re-set-the-eth-mapping/#comment-3939</guid>
		<description>Nice info.Thanks a lot.</description>
		<content:encoded><![CDATA[<p>Nice info.Thanks a lot.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Using java.net.Authenticator for Proxy-Authentication by Handset application Authenticator Proxy settings. - BlackBerryForums.com : Your Number One BlackBerry Community</title>
		<link>http://www.softonaut.com/2008/06/09/using-javanetauthenticator-for-proxy-authentication/#comment-3936</link>
		<author>Handset application Authenticator Proxy settings. - BlackBerryForums.com : Your Number One BlackBerry Community</author>
		<pubDate>Tue, 15 Jul 2008 06:52:34 +0000</pubDate>
		<guid>http://www.softonaut.com/2008/06/09/using-javanetauthenticator-for-proxy-authentication/#comment-3936</guid>
		<description>[...] I've read in java you can use the Authenticator class to handle this. There are a few examples here and here.  My Code:  [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] I&#8217;ve read in java you can use the Authenticator class to handle this. There are a few examples here and here.  My Code:  [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Using java.net.Authenticator for Proxy-Authentication by Handset application proxy handling - BlackBerryForums.com : Your Number One BlackBerry Community</title>
		<link>http://www.softonaut.com/2008/06/09/using-javanetauthenticator-for-proxy-authentication/#comment-3935</link>
		<author>Handset application proxy handling - BlackBerryForums.com : Your Number One BlackBerry Community</author>
		<pubDate>Tue, 15 Jul 2008 06:45:54 +0000</pubDate>
		<guid>http://www.softonaut.com/2008/06/09/using-javanetauthenticator-for-proxy-authentication/#comment-3935</guid>
		<description>[...] I've read in java you can use the Authenticator class to handle this. There are a few examples here and here.  My Code:  [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] I&#8217;ve read in java you can use the Authenticator class to handle this. There are a few examples here and here.  My Code:  [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Thoughts about Builder Pattern by Beautiful Java &#171; The science of lazy blogging</title>
		<link>http://www.softonaut.com/2007/01/10/thoughts-about-builder-pattern/#comment-3934</link>
		<author>Beautiful Java &#171; The science of lazy blogging</author>
		<pubDate>Sun, 06 Jul 2008 14:39:22 +0000</pubDate>
		<guid>http://www.softonaut.com/2007/01/10/thoughts-about-builder-pattern/#comment-3934</guid>
		<description>[...] [Builder pattern with named optional parameters: Effective Java (2nd Edition), Softonaut]     Posted by antonis Filed in English, Ελληνικά Tags: Java, [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] [Builder pattern with named optional parameters: Effective Java (2nd Edition), Softonaut]     Posted by antonis Filed in English, Ελληνικά Tags: Java, [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Thoughts about Builder Pattern by Mario Hochreiter</title>
		<link>http://www.softonaut.com/2007/01/10/thoughts-about-builder-pattern/#comment-3933</link>
		<author>Mario Hochreiter</author>
		<pubDate>Tue, 01 Jul 2008 11:54:59 +0000</pubDate>
		<guid>http://www.softonaut.com/2007/01/10/thoughts-about-builder-pattern/#comment-3933</guid>
		<description>@Angelo Schneider
You are right this is not the "original" builder pattern from the GoF, but a new one presented from Josh Bloch's at Java One.

Please see also Xavi Miró's great Blog entry &lt;a href="http://xavimiro.blogspot.com/2008/04/new-builder-pattern.html" rel="nofollow"&gt;here&lt;/a&gt;.

@Xavi Miró
Great idea how to ensure immutability and i appreciate that you like my implementation ;-)</description>
		<content:encoded><![CDATA[<p>@Angelo Schneider<br />
You are right this is not the &#8220;original&#8221; builder pattern from the GoF, but a new one presented from Josh Bloch&#8217;s at Java One.</p>
<p>Please see also Xavi Miró&#8217;s great Blog entry <a href="http://xavimiro.blogspot.com/2008/04/new-builder-pattern.html" rel="nofollow">here</a>.</p>
<p>@Xavi Miró<br />
Great idea how to ensure immutability and i appreciate that you like my implementation <img src='http://www.softonaut.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Thoughts about Builder Pattern by Xavi Miró</title>
		<link>http://www.softonaut.com/2007/01/10/thoughts-about-builder-pattern/#comment-3932</link>
		<author>Xavi Miró</author>
		<pubDate>Tue, 01 Jul 2008 07:36:09 +0000</pubDate>
		<guid>http://www.softonaut.com/2007/01/10/thoughts-about-builder-pattern/#comment-3932</guid>
		<description>@Impatient,

    yes, you're right, this implementation can't ensure immutability. You can use duplication of fields as Josh does, or you can complement this implementation throwing exceptions when trying to build more than once the object and when trying to modifiy the object after it's been built. I prefer doing the latter, because I don't like duplicating fields. I have complemented this implementation in my blog, &lt;a href="http://xavimiro.blogspot.com/2008/04/new-builder-pattern.html" rel="nofollow"&gt;here&lt;/a&gt;.

  Regards,

     Xavi</description>
		<content:encoded><![CDATA[<p>@Impatient,</p>
<p>    yes, you&#8217;re right, this implementation can&#8217;t ensure immutability. You can use duplication of fields as Josh does, or you can complement this implementation throwing exceptions when trying to build more than once the object and when trying to modifiy the object after it&#8217;s been built. I prefer doing the latter, because I don&#8217;t like duplicating fields. I have complemented this implementation in my blog, <a href="http://xavimiro.blogspot.com/2008/04/new-builder-pattern.html" rel="nofollow">here</a>.</p>
<p>  Regards,</p>
<p>     Xavi</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Map Application in Swing - The Easy Way by Softonaut.com &#187; SwingLabs JMapKit and Google Maps</title>
		<link>http://www.softonaut.com/2008/06/16/map-application-in-swing-the-easy-way/#comment-3927</link>
		<author>Softonaut.com &#187; SwingLabs JMapKit and Google Maps</author>
		<pubDate>Mon, 30 Jun 2008 11:54:27 +0000</pubDate>
		<guid>http://www.softonaut.com/2008/06/16/map-application-in-swing-the-easy-way/#comment-3927</guid>
		<description>[...] promised in my last blog entry Map Application in Swing - The Easy Way in this short blog entry i would like to explain how to change the default map providers for the JXMapKit to Google Maps Tile server[...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] promised in my last blog entry Map Application in Swing - The Easy Way in this short blog entry i would like to explain how to change the default map providers for the JXMapKit to Google Maps Tile server[&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Thoughts about Builder Pattern by Angelo Schneider</title>
		<link>http://www.softonaut.com/2007/01/10/thoughts-about-builder-pattern/#comment-3926</link>
		<author>Angelo Schneider</author>
		<pubDate>Sun, 29 Jun 2008 15:48:53 +0000</pubDate>
		<guid>http://www.softonaut.com/2007/01/10/thoughts-about-builder-pattern/#comment-3926</guid>
		<description>Hm,

this is not the builder pattern. The builder pattern is used to compose a set of objects in a certain way. E.g. create a "document", place a "title" and add a "paragraph".

In your example you only create one singel object (not a graph of objects) and you also use one concrete type for this object.

On the first glance your example indeed looks a bit like a builder but what you do there is writing a "fancy contructor".

A builder would work independent of the concrete object types and usually compose a graph, e.g. a document containing a title and a paragraph. The document and its nested objects then could be instances of HTMLDocumnet, HTMLTitle and  HTMLParagraph in one case or RTFDocument, RTFTitle and RTFParagraph in the other case.

Code using the builder would probably look like this: 
builder.start(); // get the builder ready to create a new document ... alternatively create a new builder
builder.setTitle("my title");
builder.addParagraph("my first paragraph");
builder.addParagraph("my second paragraph");
builder.getDocument(); // construct and _compose_ a document

Usually the point where the builder is used, has no knowledge wether an RTF or an HTML document is "builded".

Your example always knows and only can create ID3Tags ... therefor it is not the builder pattern.</description>
		<content:encoded><![CDATA[<p>Hm,</p>
<p>this is not the builder pattern. The builder pattern is used to compose a set of objects in a certain way. E.g. create a &#8220;document&#8221;, place a &#8220;title&#8221; and add a &#8220;paragraph&#8221;.</p>
<p>In your example you only create one singel object (not a graph of objects) and you also use one concrete type for this object.</p>
<p>On the first glance your example indeed looks a bit like a builder but what you do there is writing a &#8220;fancy contructor&#8221;.</p>
<p>A builder would work independent of the concrete object types and usually compose a graph, e.g. a document containing a title and a paragraph. The document and its nested objects then could be instances of HTMLDocumnet, HTMLTitle and  HTMLParagraph in one case or RTFDocument, RTFTitle and RTFParagraph in the other case.</p>
<p>Code using the builder would probably look like this:<br />
builder.start(); // get the builder ready to create a new document &#8230; alternatively create a new builder<br />
builder.setTitle(&#8221;my title&#8221;);<br />
builder.addParagraph(&#8221;my first paragraph&#8221;);<br />
builder.addParagraph(&#8221;my second paragraph&#8221;);<br />
builder.getDocument(); // construct and _compose_ a document</p>
<p>Usually the point where the builder is used, has no knowledge wether an RTF or an HTML document is &#8220;builded&#8221;.</p>
<p>Your example always knows and only can create ID3Tags &#8230; therefor it is not the builder pattern.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
