Re: Mixing OO and DB

From: topmind <>
Date: Thu, 6 Mar 2008 13:37:56 -0800 (PST)
Message-ID: <>

Robert Martin wrote:
> On 2008-03-04 17:06:57 -0600, topmind <> said:
> >
> >
> > Robert Martin wrote:
> >> What you are missing is that there is
> >> no restriction that other objects use the data from the employee_table.
> >> So while a class certainly defines the methods that can be used to
> >> access and manipulate the data within that class, there can be many
> >> different classes that use the same data in very different ways.
> >
> > In other words, each class becomes a little roll-your-own database
> > with a very custom interface.
> Each small group of classes becomes a little roll-your-own data access
> and manipulation scheme that is perfectly tuned for it's very specific
> purpose.

Which is over-kill for the task-level. Often one ends up only instantiating stuff once, for example. If you do that, you might as well use procedural to avoid bloated code.

> > RDBMS instead factor common collection-
> > handling and attribute-management idioms into a central tool.
> Granted. Very useful.

Then why wouldn't you want that in OOP also? Answer: because you'd have to rethink encapsulation and also face the same problems that prompted Dr. Codd to formulate relational.

> > OO does
> > not, making it primitive and tedious.
> Balderdash. Programmers organize the data they extract from the
> database into forms that are more convenient for the particular
> processing they need to do.

Our techniques for measuring "more convenient" apparently are very different. Either one of us is way off (or both?), or they are subjective personal preferences.

> > RDBMS are a huge form of reuse of concepts.
> Granted.
> > OO is shanty-town design versus modern civil planning.
> Stupid sloganeering with no substance behind it.

Is your sloganeering also "stupid"? Like calling 5-line methods/ functions "professional" and longer ones "unprofessional" without objective justification?

> > If
> > one learns to leverage those idioms provided by the DB, then the code
> > is simpler because it doesn't have to reinvent them.
> That sentence is true. It is also true if you replace the phrase "the
> DB" with the word OO.

Show me how. I opened my wallet, purchased your book, and found it wanting and produced a much simpler and flexible payroll example. For free even. Unlike you, I don't charge for personal subjective opinions.

> --
> Robert C. Martin (Uncle Bob)��| email:
> Object Mentor Inc.� � � � � ��| blog:��

-T- Received on Thu Mar 06 2008 - 22:37:56 CET

Original text of this message