<?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: Datasets, DataReaders, and Objects &#8211; oh my !</title>
	<atom:link href="http://www.udidahan.com/2004/02/13/datasets-datareaders-and-objects-oh-my/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.udidahan.com/2004/02/13/datasets-datareaders-and-objects-oh-my/</link>
	<description>Enterprise Development Expert &#38; SOA Specialist</description>
	<lastBuildDate>Sat, 11 Feb 2012 15:16:10 -0600</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Anonymous</title>
		<link>http://www.udidahan.com/2004/02/13/datasets-datareaders-and-objects-oh-my/comment-page-1/#comment-63</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Sun, 29 Feb 2004 23:33:13 +0000</pubDate>
		<guid isPermaLink="false">http://wp_630.weblogs.us/archives/35#comment-63</guid>
		<description>Udi,

What do you think about using Typed Datasets for the business entities?

Couldn&#039;t they be de-coupled from the data schema? (The property names do not have to match the database column names).
</description>
		<content:encoded><![CDATA[<p>Udi,</p>
<p>What do you think about using Typed Datasets for the business entities?</p>
<p>Couldn&#8217;t they be de-coupled from the data schema? (The property names do not have to match the database column names).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: stefan demetz</title>
		<link>http://www.udidahan.com/2004/02/13/datasets-datareaders-and-objects-oh-my/comment-page-1/#comment-62</link>
		<dc:creator>stefan demetz</dc:creator>
		<pubDate>Mon, 23 Feb 2004 06:07:47 +0000</pubDate>
		<guid isPermaLink="false">http://wp_630.weblogs.us/archives/35#comment-62</guid>
		<description>Why .NET developers don&#039;t grok advanced stuff
http://dotnetjunkies.com/WebLog/stefandemetz/archive/2004/02/22/7736.aspx</description>
		<content:encoded><![CDATA[<p>Why .NET developers don&#8217;t grok advanced stuff<br />
<a href="http://dotnetjunkies.com/WebLog/stefandemetz/archive/2004/02/22/7736.aspx" rel="nofollow">http://dotnetjunkies.com/WebLog/stefandemetz/archive/2004/02/22/7736.aspx</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Peter</title>
		<link>http://www.udidahan.com/2004/02/13/datasets-datareaders-and-objects-oh-my/comment-page-1/#comment-61</link>
		<dc:creator>Peter</dc:creator>
		<pubDate>Thu, 19 Feb 2004 07:14:32 +0000</pubDate>
		<guid isPermaLink="false">http://wp_630.weblogs.us/archives/35#comment-61</guid>
		<description>The real world is quite different, and there are no perfect solutions.

DataSets are just data, you can map that to tables/columns or to whatever you want. 

Objects look great, but most of the not-scalable solutions I&#039;ve seen in the past years were not because they used the equivalent to dataset/datareaders. They did not scale because they tried to use objects using a pure OO design with a relational database in a distributed design. This is the evil, and that&#039;s why object/relational mappers are really the most dangerous things for scalability.</description>
		<content:encoded><![CDATA[<p>The real world is quite different, and there are no perfect solutions.</p>
<p>DataSets are just data, you can map that to tables/columns or to whatever you want. </p>
<p>Objects look great, but most of the not-scalable solutions I&#8217;ve seen in the past years were not because they used the equivalent to dataset/datareaders. They did not scale because they tried to use objects using a pure OO design with a relational database in a distributed design. This is the evil, and that&#8217;s why object/relational mappers are really the most dangerous things for scalability.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joel Semeniuk</title>
		<link>http://www.udidahan.com/2004/02/13/datasets-datareaders-and-objects-oh-my/comment-page-1/#comment-60</link>
		<dc:creator>Joel Semeniuk</dc:creator>
		<pubDate>Sun, 15 Feb 2004 23:21:27 +0000</pubDate>
		<guid isPermaLink="false">http://wp_630.weblogs.us/archives/35#comment-60</guid>
		<description>I&#039;m not sure that Black and White is always correct.  I am hearing a lot of &quot;that is bad&quot; - &quot;this is always good&quot; - &quot;that architecture is horrible&quot; - these are all quite harsh I tink - and that CAN&#039;T be the case.  Also, if sooo many developers are &quot;getting it wrong&quot; according to the purists (no slam on anyone by the way) than wouldn&#039;t you agree that the problem doesn&#039;t lie with the developers but maybe the framework and tools developers use?  If it is really HARD (and that is a relative term) to create and build a proper data architecture - I think we need to address the cause.

Personally, I&#039;m for less work - getting Rapid Economic Justification for what I&#039;m doing early - whatever that means.  I don&#039;t think that Datasets are always the right thing to do - I also don&#039;t think that datasets are NEVER the correct solution.  On a previous project, the typed dataset was a friend - we built a pure metadata driven system and hence had no &quot;business objects&quot; because it all needed to be completely dynamic.  It was impossible to perform object-relational mapping - and thus this type of design pattern worked.  In fact, our objects were PURELY declarative at run time! (and yes, performance and scalability were the aspects we let slide)  For each project you need to look at all of the various associated risks.  Is it performance, is it scalability, is it security, is it change, time, money, resources? (and there are more)  All these together help focus the architecture decisions you make - one design pattern does NOT fit all.

But I do have to say, I agree with the points around existing samples (or lack there of).  I think I would like to see much better samples around design patterns - along with guidelines on how to select the correct design patterns for different situations.  A map for non-arhictects perhaps - and then for each one a SOLID example.</description>
		<content:encoded><![CDATA[<p>I&#8217;m not sure that Black and White is always correct.  I am hearing a lot of &#8220;that is bad&#8221; &#8211; &#8220;this is always good&#8221; &#8211; &#8220;that architecture is horrible&#8221; &#8211; these are all quite harsh I tink &#8211; and that CAN&#8217;T be the case.  Also, if sooo many developers are &#8220;getting it wrong&#8221; according to the purists (no slam on anyone by the way) than wouldn&#8217;t you agree that the problem doesn&#8217;t lie with the developers but maybe the framework and tools developers use?  If it is really HARD (and that is a relative term) to create and build a proper data architecture &#8211; I think we need to address the cause.</p>
<p>Personally, I&#8217;m for less work &#8211; getting Rapid Economic Justification for what I&#8217;m doing early &#8211; whatever that means.  I don&#8217;t think that Datasets are always the right thing to do &#8211; I also don&#8217;t think that datasets are NEVER the correct solution.  On a previous project, the typed dataset was a friend &#8211; we built a pure metadata driven system and hence had no &#8220;business objects&#8221; because it all needed to be completely dynamic.  It was impossible to perform object-relational mapping &#8211; and thus this type of design pattern worked.  In fact, our objects were PURELY declarative at run time! (and yes, performance and scalability were the aspects we let slide)  For each project you need to look at all of the various associated risks.  Is it performance, is it scalability, is it security, is it change, time, money, resources? (and there are more)  All these together help focus the architecture decisions you make &#8211; one design pattern does NOT fit all.</p>
<p>But I do have to say, I agree with the points around existing samples (or lack there of).  I think I would like to see much better samples around design patterns &#8211; along with guidelines on how to select the correct design patterns for different situations.  A map for non-arhictects perhaps &#8211; and then for each one a SOLID example.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sam Gentile</title>
		<link>http://www.udidahan.com/2004/02/13/datasets-datareaders-and-objects-oh-my/comment-page-1/#comment-59</link>
		<dc:creator>Sam Gentile</dc:creator>
		<pubDate>Sun, 15 Feb 2004 04:17:38 +0000</pubDate>
		<guid isPermaLink="false">http://wp_630.weblogs.us/archives/35#comment-59</guid>
		<description>And no, the Pet Shop sample, like most Such samples, is a lousy example of how to do distributed system design. Its use of the DAAB and other totally non-scalable components in a partial ES/COM+ system is laughable.</description>
		<content:encoded><![CDATA[<p>And no, the Pet Shop sample, like most Such samples, is a lousy example of how to do distributed system design. Its use of the DAAB and other totally non-scalable components in a partial ES/COM+ system is laughable.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sam Gentile</title>
		<link>http://www.udidahan.com/2004/02/13/datasets-datareaders-and-objects-oh-my/comment-page-1/#comment-58</link>
		<dc:creator>Sam Gentile</dc:creator>
		<pubDate>Sun, 15 Feb 2004 04:15:38 +0000</pubDate>
		<guid isPermaLink="false">http://wp_630.weblogs.us/archives/35#comment-58</guid>
		<description>Don&#039;t get arrogant about this. I know all about keeping the PL totally insulated from the database and DataSets, etc. Thats the way I design architectures and I have been doing this for over 20 years. We specifically use ES to also completly physically isolate the PL box from the business layer box so that if someone should compromise the security of the front end they can nover get any further and no where near the database. Don&#039;t pretend to tell me how to architect systems.

I was just speaking in generalities about the use of DataSets and DataReaders and yes its very scary what I see out there. Almost all .NET developers have virtually zero knowledge of how to properly design scalable transactional systems. On the otherhand I have been doing this since the 80&#039;s. Cheers.</description>
		<content:encoded><![CDATA[<p>Don&#8217;t get arrogant about this. I know all about keeping the PL totally insulated from the database and DataSets, etc. Thats the way I design architectures and I have been doing this for over 20 years. We specifically use ES to also completly physically isolate the PL box from the business layer box so that if someone should compromise the security of the front end they can nover get any further and no where near the database. Don&#8217;t pretend to tell me how to architect systems.</p>
<p>I was just speaking in generalities about the use of DataSets and DataReaders and yes its very scary what I see out there. Almost all .NET developers have virtually zero knowledge of how to properly design scalable transactional systems. On the otherhand I have been doing this since the 80&#8217;s. Cheers.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Clarke Scott</title>
		<link>http://www.udidahan.com/2004/02/13/datasets-datareaders-and-objects-oh-my/comment-page-1/#comment-57</link>
		<dc:creator>Clarke Scott</dc:creator>
		<pubDate>Sat, 14 Feb 2004 08:32:24 +0000</pubDate>
		<guid isPermaLink="false">http://wp_630.weblogs.us/archives/35#comment-57</guid>
		<description>The arrogance of some people!
http://dotnetjunkies.com/WebLog/clarkescott/archive/2004/02/14/7219.aspx</description>
		<content:encoded><![CDATA[<p>The arrogance of some people!<br />
<a href="http://dotnetjunkies.com/WebLog/clarkescott/archive/2004/02/14/7219.aspx" rel="nofollow">http://dotnetjunkies.com/WebLog/clarkescott/archive/2004/02/14/7219.aspx</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jhai</title>
		<link>http://www.udidahan.com/2004/02/13/datasets-datareaders-and-objects-oh-my/comment-page-1/#comment-56</link>
		<dc:creator>Jhai</dc:creator>
		<pubDate>Sat, 14 Feb 2004 08:20:59 +0000</pubDate>
		<guid isPermaLink="false">http://wp_630.weblogs.us/archives/35#comment-56</guid>
		<description>I think the .NET Petshop application is a good example of a 3 LA, or i might be wrong

 http://www.microsoft.com/downloads/details.aspx?FamilyId=E2930625-3C7A-49DC-8655-A8205813D6DB&amp;displaylang=en

check out the code!</description>
		<content:encoded><![CDATA[<p>I think the .NET Petshop application is a good example of a 3 LA, or i might be wrong</p>
<p> <a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=E2930625-3C7A-49DC-8655-A8205813D6DB&amp;displaylang=en" rel="nofollow">http://www.microsoft.com/downloads/details.aspx?FamilyId=E2930625-3C7A-49DC-8655-A8205813D6DB&amp;displaylang=en</a></p>
<p>check out the code!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brian</title>
		<link>http://www.udidahan.com/2004/02/13/datasets-datareaders-and-objects-oh-my/comment-page-1/#comment-55</link>
		<dc:creator>Brian</dc:creator>
		<pubDate>Sat, 14 Feb 2004 06:28:11 +0000</pubDate>
		<guid isPermaLink="false">http://wp_630.weblogs.us/archives/35#comment-55</guid>
		<description>I personally would love to see how to properly do a 3 layer setup (I&#039;m a new developer).  Could you maybe give some links? I&#039;m guessing this has been written about already.</description>
		<content:encoded><![CDATA[<p>I personally would love to see how to properly do a 3 layer setup (I&#8217;m a new developer).  Could you maybe give some links? I&#8217;m guessing this has been written about already.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Darrell</title>
		<link>http://www.udidahan.com/2004/02/13/datasets-datareaders-and-objects-oh-my/comment-page-1/#comment-54</link>
		<dc:creator>Darrell</dc:creator>
		<pubDate>Sat, 14 Feb 2004 05:45:08 +0000</pubDate>
		<guid isPermaLink="false">http://wp_630.weblogs.us/archives/35#comment-54</guid>
		<description>Strongly typed DataSets, when properly used with table mappings, do allow you to abstract away all the naming change problems you describe and look much like your domain objects.

I look forward to the rest of your arguments.</description>
		<content:encoded><![CDATA[<p>Strongly typed DataSets, when properly used with table mappings, do allow you to abstract away all the naming change problems you describe and look much like your domain objects.</p>
<p>I look forward to the rest of your arguments.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Paulb</title>
		<link>http://www.udidahan.com/2004/02/13/datasets-datareaders-and-objects-oh-my/comment-page-1/#comment-53</link>
		<dc:creator>Paulb</dc:creator>
		<pubDate>Sat, 14 Feb 2004 04:58:44 +0000</pubDate>
		<guid isPermaLink="false">http://wp_630.weblogs.us/archives/35#comment-53</guid>
		<description>I&#039;d rather see you continue the SOA series, since that is helpfull now and will be in the future</description>
		<content:encoded><![CDATA[<p>I&#8217;d rather see you continue the SOA series, since that is helpfull now and will be in the future</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Paulb</title>
		<link>http://www.udidahan.com/2004/02/13/datasets-datareaders-and-objects-oh-my/comment-page-1/#comment-52</link>
		<dc:creator>Paulb</dc:creator>
		<pubDate>Sat, 14 Feb 2004 04:56:44 +0000</pubDate>
		<guid isPermaLink="false">http://wp_630.weblogs.us/archives/35#comment-52</guid>
		<description>Great post. The biggest problem I see when developing web-applications is not developers not knowing how to properly design and develop a LA; but customers, closely followed by managment, comparing prices and opting for the less scable 2 layer solution (db and app). This is, because most of my customers have small, yearly IT budgets and I am not willing to take the risk of losing them next year to some cheap, overseas dev-shop, after I build a nice and maintainable 3 LA, partialy paid from my pocket.</description>
		<content:encoded><![CDATA[<p>Great post. The biggest problem I see when developing web-applications is not developers not knowing how to properly design and develop a LA; but customers, closely followed by managment, comparing prices and opting for the less scable 2 layer solution (db and app). This is, because most of my customers have small, yearly IT budgets and I am not willing to take the risk of losing them next year to some cheap, overseas dev-shop, after I build a nice and maintainable 3 LA, partialy paid from my pocket.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

