<?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: Design patterns</title>
	<atom:link href="http://www.snell-pym.org.uk/archives/2008/12/29/design-patterns/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.snell-pym.org.uk/archives/2008/12/29/design-patterns/</link>
	<description>Sarah and Alaric Snell-Pym living in interesting times</description>
	<pubDate>Thu, 29 Jul 2010 19:52:41 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Trey Jackson</title>
		<link>http://www.snell-pym.org.uk/archives/2008/12/29/design-patterns/comment-page-1/#comment-107522</link>
		<dc:creator>Trey Jackson</dc:creator>
		<pubDate>Sat, 12 Sep 2009 18:07:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.snell-pym.org.uk/?p=881#comment-107522</guid>
		<description>&lt;p&gt;Amen!  While I agree that some design patterns are like "baking a cake" (e.g. MVC), many are only useful to work around language problems (for c++: pimpl, chain of responsibility, visitor, etc.).&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Amen!  While I agree that some design patterns are like "baking a cake" (e.g. MVC), many are only useful to work around language problems (for c++: pimpl, chain of responsibility, visitor, etc.).</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Seth Veale</title>
		<link>http://www.snell-pym.org.uk/archives/2008/12/29/design-patterns/comment-page-1/#comment-105443</link>
		<dc:creator>Seth Veale</dc:creator>
		<pubDate>Sat, 29 Aug 2009 23:46:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.snell-pym.org.uk/?p=881#comment-105443</guid>
		<description>&lt;p&gt;Well said. Obviously a bit old now though :)&lt;/p&gt;

&lt;p&gt;As somebody relatively new to programming (8 years, incl uni), and having learnt with languages like Java and then (pro/re)gressed to C and Lisp-derivatives later on, patterns seem a lot less interesting.
Every API I used when I was learning had patterns in it, and the patterns are more or less obvious because of that. Reading GoF was a bit of an anti-climax. PoEA was a bit more interesting.&lt;/p&gt;

&lt;p&gt;I look at patterns as a perspective on a problem. It's like loops and recursion being different but roughly equivalent perspectives on repetition.&lt;/p&gt;

&lt;p&gt;What I'd like is a language with a good way of communicating perspective, rather than a bunch of "sugar" features.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Well said. Obviously a bit old now though <img src='http://www.snell-pym.org.uk/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>

<p>As somebody relatively new to programming (8 years, incl uni), and having learnt with languages like Java and then (pro/re)gressed to C and Lisp-derivatives later on, patterns seem a lot less interesting.
Every API I used when I was learning had patterns in it, and the patterns are more or less obvious because of that. Reading GoF was a bit of an anti-climax. PoEA was a bit more interesting.</p>

<p>I look at patterns as a perspective on a problem. It's like loops and recursion being different but roughly equivalent perspectives on repetition.</p>

<p>What I'd like is a language with a good way of communicating perspective, rather than a bunch of "sugar" features.</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Matt V</title>
		<link>http://www.snell-pym.org.uk/archives/2008/12/29/design-patterns/comment-page-1/#comment-105299</link>
		<dc:creator>Matt V</dc:creator>
		<pubDate>Fri, 28 Aug 2009 21:10:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.snell-pym.org.uk/?p=881#comment-105299</guid>
		<description>&lt;p&gt;I'm not religious about tech stuff at all, but it seems to me you are very confused about what a pattern is.
Take a non-programming example - baking a cake.
The pattern 'baking a cake' is not a cake, and it is not a recipe either.
When I say "I am baking a cake", you know what I mean, even if you don't know what kind of cake I'm baking, or what recipe I'm using.&lt;/p&gt;

&lt;p&gt;So using a 'strategy' pattern in a program doesn't imply any particular language or code implementation, it is just a more general 'way' of doing something.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>I'm not religious about tech stuff at all, but it seems to me you are very confused about what a pattern is.
Take a non-programming example - baking a cake.
The pattern 'baking a cake' is not a cake, and it is not a recipe either.
When I say "I am baking a cake", you know what I mean, even if you don't know what kind of cake I'm baking, or what recipe I'm using.</p>

<p>So using a 'strategy' pattern in a program doesn't imply any particular language or code implementation, it is just a more general 'way' of doing something.</p>]]></content:encoded>
	</item>
	<item>
		<title>By: clord</title>
		<link>http://www.snell-pym.org.uk/archives/2008/12/29/design-patterns/comment-page-1/#comment-105298</link>
		<dc:creator>clord</dc:creator>
		<pubDate>Fri, 28 Aug 2009 20:53:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.snell-pym.org.uk/?p=881#comment-105298</guid>
		<description>&lt;p&gt;(this said by someone who maintains 200+kloc of C, cry)&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>(this said by someone who maintains 200+kloc of C, cry)</p>]]></content:encoded>
	</item>
	<item>
		<title>By: clord</title>
		<link>http://www.snell-pym.org.uk/archives/2008/12/29/design-patterns/comment-page-1/#comment-105297</link>
		<dc:creator>clord</dc:creator>
		<pubDate>Fri, 28 Aug 2009 20:52:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.snell-pym.org.uk/?p=881#comment-105297</guid>
		<description>&lt;p&gt;"automating the generation of pattern implementations rather than trying to encode patterns themselves"&lt;/p&gt;

&lt;p&gt;They said the same thing about virtual function tables way back when too. "That's just a table of pointers passed around implicitly, it's not ACTUAL virtual methods."&lt;/p&gt;

&lt;p&gt;Of course, now days compilers can actually recognize the pattern and convert explicitly virtual objects back into static calls when possible and safe, whereas the old grey C programmers with their tables of function tables either have to break the design pattern and dogma to match that performance gain, or else suffer through a lot of kludge.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>"automating the generation of pattern implementations rather than trying to encode patterns themselves"</p>

<p>They said the same thing about virtual function tables way back when too. "That's just a table of pointers passed around implicitly, it's not ACTUAL virtual methods."</p>

<p>Of course, now days compilers can actually recognize the pattern and convert explicitly virtual objects back into static calls when possible and safe, whereas the old grey C programmers with their tables of function tables either have to break the design pattern and dogma to match that performance gain, or else suffer through a lot of kludge.</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Dale</title>
		<link>http://www.snell-pym.org.uk/archives/2008/12/29/design-patterns/comment-page-1/#comment-105296</link>
		<dc:creator>Dale</dc:creator>
		<pubDate>Fri, 28 Aug 2009 20:43:29 +0000</pubDate>
		<guid isPermaLink="false">http://www.snell-pym.org.uk/?p=881#comment-105296</guid>
		<description>&lt;p&gt;Couldn't agree more, but, unfortunately I think you find this kind of rabid devotion common in many aspects of the developer communities. I've always thought of patterns as plastic, that they can change and bend, and even be discarded as the languages/environment/needs change - but try telling that to some people.
You make a great point about more complex languages abstracting patterns themselves, but I think you could go further and look at frameworks like Rails and Cake. Although the languages might not abstract the patterns, the frameworks do, and in many cases to an extent that the developer need not even see the pattern in order to effectively use it - just like your great example about procedure calls in assembly.
Great article.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Couldn't agree more, but, unfortunately I think you find this kind of rabid devotion common in many aspects of the developer communities. I've always thought of patterns as plastic, that they can change and bend, and even be discarded as the languages/environment/needs change - but try telling that to some people.
You make a great point about more complex languages abstracting patterns themselves, but I think you could go further and look at frameworks like Rails and Cake. Although the languages might not abstract the patterns, the frameworks do, and in many cases to an extent that the developer need not even see the pattern in order to effectively use it - just like your great example about procedure calls in assembly.
Great article.</p>]]></content:encoded>
	</item>
</channel>
</rss>
