Re: Object-relational impedence

From: topmind <topmind_at_technologist.com>
Date: Sun, 16 Mar 2008 19:21:26 -0700 (PDT)
Message-ID: <81e5429d-e017-4288-bf98-ba02c44097c1_at_h11g2000prf.googlegroups.com>


Robert Martin wrote:
> On 2008-03-14 00:17:40 -0500, frebe <frebe73_at_gmail.com> said:
>
> > On 13 Mar, 18:40, Robert Martin <uncle..._at_objectmentor.com> wrote:
> >> The real point of that remark was that the user of a tool is at a
> >> higher level of abstraction than the tool itself. �SQL is a tool. �ORM
> > s
> >> are tools that use SQL to get their job done, just like compilers use
> >> assembly to get their job done. �In that sense ORMs live at a higher
> >> level of abstraction than SQL.
> >
> > Lets have an example: There are many "compiler" products translating
> > from a high-level language like ADA to a low-level language like C,
> > instead of translating to machine code directly. What if someone wrote
> > a "compiler" translating C source code to ADA source code, would that
> > make C more high level than ADA? Hardly? The existance of a product
> > translating from language A to language B doesn't say anything about
> > the levels of A and B.
>
> That's a good point. The fact that you can write a translator from
> A->B does not mean A is higher level than B. On the other hand, when A
> *truly is* higher level than B, there is a lot of leverage to be gained
> by using A instead of B. That kind of leverage is cost effective and
> attracts users. More and more people start using A as opposed to B. B
> falls into less and less use. In the end, while everyone else is off
> gaining the leverage of A, B is defended by a group of die-hards who
> demand that all this A nonsense is foolish, and stupid, and who bemoan
> the fact that nobody truly understands the purity of essense of B.
>
> > If a RDBMS product is implemented using an OOPL, does that make
> > relational algebra more high level than OO?
>
> Yes. I think this is obvious on the face of it. RDBs are a much
> higher level concept than Java, or C++, or OO in general. OO is *code*.
>
> On the other hand, ORMs are higher level than RDBs (not better .. level
> is not a value judgement) because ORMs make use of RDBs in order to
> achieve a specific intent.

Can you prove/demonstrate this rather than claim it?

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

-T- Received on Mon Mar 17 2008 - 03:21:26 CET

Original text of this message