<?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: On Object Soup</title>
	<atom:link href="http://www.softwarearchitecturebook.com/2009/12/object-soup/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.softwarearchitecturebook.com/2009/12/object-soup/</link>
	<description>Homepage for the Textbook</description>
	<lastBuildDate>Fri, 29 Oct 2010 16:37:34 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: I. Gibbs</title>
		<link>http://www.softwarearchitecturebook.com/2009/12/object-soup/comment-page-1/#comment-1344</link>
		<dc:creator>I. Gibbs</dc:creator>
		<pubDate>Tue, 21 Sep 2010 20:15:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.softwarearchitecturebook.com/?p=49#comment-1344</guid>
		<description>Your article is very informative and specifies a very real problem. However, it also seems that you are indicating that this problematic &quot;object soup&quot; has some direct connection to object oriented programming. I don&#039;t believe that it does. 

In my opinion, this &quot;object soup&quot; violates a principle called information hiding. In the three-tier architecture you describe, information hiding is explicit in the architecture. In &quot;object soup&quot; information hiding is not part of the overall architecture. 

It is true that an OO principle of design is &quot;... to couple data and the computations that act on that data together in the objects ...&quot;. Yes, this is true in general. However, you are still suppose to design things. For example in Arthur J. Riel&#039;s &quot;Object-Oriented Design Heuristics&quot; book, states many heuristics which the OO application here violates, such as:

heuristic 4.13) A class must know what it contains, but it should never know who contains it. 


Design, in the abstract, is reducible to principles, guidelines, etc. However, a designer is still expected to use these principles, guidelines, and judgement. It is perhaps why designers will probably never be taught entirely from a list of rules.

Thank you for your article, I enjoyed reading it.</description>
		<content:encoded><![CDATA[<p>Your article is very informative and specifies a very real problem. However, it also seems that you are indicating that this problematic &#8220;object soup&#8221; has some direct connection to object oriented programming. I don&#8217;t believe that it does. </p>
<p>In my opinion, this &#8220;object soup&#8221; violates a principle called information hiding. In the three-tier architecture you describe, information hiding is explicit in the architecture. In &#8220;object soup&#8221; information hiding is not part of the overall architecture. </p>
<p>It is true that an OO principle of design is &#8220;&#8230; to couple data and the computations that act on that data together in the objects &#8230;&#8221;. Yes, this is true in general. However, you are still suppose to design things. For example in Arthur J. Riel&#8217;s &#8220;Object-Oriented Design Heuristics&#8221; book, states many heuristics which the OO application here violates, such as:</p>
<p>heuristic 4.13) A class must know what it contains, but it should never know who contains it. </p>
<p>Design, in the abstract, is reducible to principles, guidelines, etc. However, a designer is still expected to use these principles, guidelines, and judgement. It is perhaps why designers will probably never be taught entirely from a list of rules.</p>
<p>Thank you for your article, I enjoyed reading it.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

