<?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: First principle of design refined</title>
	<atom:link href="http://www.udidahan.com/2007/05/12/first-principle-of-design-refined/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.udidahan.com/2007/05/12/first-principle-of-design-refined/</link>
	<description>Enterprise Development Expert &#38; SOA Specialist</description>
	<lastBuildDate>Wed, 10 Mar 2010 11:06:57 -0600</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: &#187; Interfaces solve visibility and testing issues</title>
		<link>http://www.udidahan.com/2007/05/12/first-principle-of-design-refined/comment-page-1/#comment-2041</link>
		<dc:creator>&#187; Interfaces solve visibility and testing issues</dc:creator>
		<pubDate>Mon, 04 Jun 2007 09:09:17 +0000</pubDate>
		<guid isPermaLink="false">http://udidahan.weblogs.us/2007/05/12/first-principle-of-design-refined/#comment-2041</guid>
		<description>[...] way to package your code to make sure this occurs follows a very simple design principle. This is much easier to put in practice on new development, but you&#8217;ll find that it [...]</description>
		<content:encoded><![CDATA[<p>[...] way to package your code to make sure this occurs follows a very simple design principle. This is much easier to put in practice on new development, but you&#8217;ll find that it [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Evan</title>
		<link>http://www.udidahan.com/2007/05/12/first-principle-of-design-refined/comment-page-1/#comment-1738</link>
		<dc:creator>Evan</dc:creator>
		<pubDate>Tue, 15 May 2007 05:05:14 +0000</pubDate>
		<guid isPermaLink="false">http://udidahan.weblogs.us/2007/05/12/first-principle-of-design-refined/#comment-1738</guid>
		<description>I left my thoughts in a post here:
http://www.evanhoff.com/archive/2007/05/15/14.aspx

They were a bit long, and I didn&#039;t want to hijack your blog. ;-)

Evan</description>
		<content:encoded><![CDATA[<p>I left my thoughts in a post here:<br />
<a href="http://www.evanhoff.com/archive/2007/05/15/14.aspx" rel="nofollow">http://www.evanhoff.com/archive/2007/05/15/14.aspx</a></p>
<p>They were a bit long, and I didn&#8217;t want to hijack your blog. <img src='http://www.udidahan.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Evan</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris</title>
		<link>http://www.udidahan.com/2007/05/12/first-principle-of-design-refined/comment-page-1/#comment-1733</link>
		<dc:creator>Chris</dc:creator>
		<pubDate>Mon, 14 May 2007 22:45:33 +0000</pubDate>
		<guid isPermaLink="false">http://udidahan.weblogs.us/2007/05/12/first-principle-of-design-refined/#comment-1733</guid>
		<description>Actually I totally agree with Udi here.. interfaces are useful for things like mocking &amp; TDD, even if only one class implements one interface.</description>
		<content:encoded><![CDATA[<p>Actually I totally agree with Udi here.. interfaces are useful for things like mocking &amp; TDD, even if only one class implements one interface.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: thesoftwaresimplist</title>
		<link>http://www.udidahan.com/2007/05/12/first-principle-of-design-refined/comment-page-1/#comment-1712</link>
		<dc:creator>thesoftwaresimplist</dc:creator>
		<pubDate>Sun, 13 May 2007 06:15:46 +0000</pubDate>
		<guid isPermaLink="false">http://udidahan.weblogs.us/2007/05/12/first-principle-of-design-refined/#comment-1712</guid>
		<description>Well, if over the past three years of my blogging, this is the first time you disagree, I&#039;m quite pleased with myself :)

Since I use interfaces to model the roles in a system, according to the Object-Role Modeling &quot;philosophy&quot;, I don&#039;t get many extraneous interfaces. It&#039;s possible that this principle holds strongest when doing ORM.

Or, maybe it&#039;s the other way around. Maybe this principle can lead developers to ORM. That is what I&#039;m hoping for.</description>
		<content:encoded><![CDATA[<p>Well, if over the past three years of my blogging, this is the first time you disagree, I&#8217;m quite pleased with myself <img src='http://www.udidahan.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Since I use interfaces to model the roles in a system, according to the Object-Role Modeling &#8220;philosophy&#8221;, I don&#8217;t get many extraneous interfaces. It&#8217;s possible that this principle holds strongest when doing ORM.</p>
<p>Or, maybe it&#8217;s the other way around. Maybe this principle can lead developers to ORM. That is what I&#8217;m hoping for.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Andrew Sacamano</title>
		<link>http://www.udidahan.com/2007/05/12/first-principle-of-design-refined/comment-page-1/#comment-1709</link>
		<dc:creator>Andrew Sacamano</dc:creator>
		<pubDate>Sun, 13 May 2007 01:33:15 +0000</pubDate>
		<guid isPermaLink="false">http://udidahan.weblogs.us/2007/05/12/first-principle-of-design-refined/#comment-1709</guid>
		<description>Udi, for once I disagree with you.  Actually, I don&#039;t disagree with the idea, I just think you need a few more criteria.  I have seen a few too many examples of people mindlessly cluttering their code with interfaces which exactly mirror the design of the only class which implements them, and complicating their build and deployment processes unnecessarily.

Perhaps it could be &quot;For any classes A and B in separate modules of a system...&quot; Or maybe I&#039;m thinking of lower level of design from what you are thinking of, and that needs to be called out. But as long as the thought of interfaces is always in one&#039;s mind, I think its fine to occasionally let classes just work together.</description>
		<content:encoded><![CDATA[<p>Udi, for once I disagree with you.  Actually, I don&#8217;t disagree with the idea, I just think you need a few more criteria.  I have seen a few too many examples of people mindlessly cluttering their code with interfaces which exactly mirror the design of the only class which implements them, and complicating their build and deployment processes unnecessarily.</p>
<p>Perhaps it could be &#8220;For any classes A and B in separate modules of a system&#8230;&#8221; Or maybe I&#8217;m thinking of lower level of design from what you are thinking of, and that needs to be called out. But as long as the thought of interfaces is always in one&#8217;s mind, I think its fine to occasionally let classes just work together.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
