Re: Object-relational impedence

From: topmind <>
Date: Mon, 3 Mar 2008 13:51:41 -0800 (PST)
Message-ID: <>

On Mar 3, 1:11 pm, "Dmitry A. Kazakov" <> wrote:
> On Mon, 3 Mar 2008 11:44:07 -0800 (PST), topmind wrote:
> > Dmitry A. Kazakov wrote:
> >> On Mon, 03 Mar 2008 17:36:50 GMT, David Cressey wrote:
> >>> "Roy Hann" <specia..._at_processed.almost.meat> wrote in message
> >>>
> >>>> I completely, 100% agree with that. Code is evil.
> >>> It appears, from reading c.o., that OO people regard data structures as
> >>> evil.
> >> Right, the structure of data would be too low-level to be able to capture
> >> behavior. As in mathematics, in OO the internal structure of objects is
> >> irrelevant and when considered, then only as an implementation detail to be
> >> abstracted away. OO deals with the structures of sets of objects exposing
> >> same behavior and relations between such sets.
> > This is misleading. An association between object A and object B does
> > NOT go away just because it is managed via accessors.
> Associations are not managed via links. There are no strings tying the
> numbers 1 (object A) and 2 (object B).
> But I guess you probably meant a data structure called "linked list".
> Please note: _data structure_. Watch out, you fall into heresy, dear
> topmind!

I did not say that *all* objects have associations between them. In practice, there are a lot of associations between objects. In memory these become a graph of object pointers. Even in UML, relationship diagrams are common. If all that could be magically encapsulated under the carpet so that nobody had to worry about them, then why have relationship diagrams? If one doesn't focus on such, then duplication (among other problems) slips in.

> > OOP not only
> > doesn't get one away from dealing with things as "structures", but
> > uses structures that were discredited in late 60's.
> How can anybody discredit a data structure? Recently I was taught by our
> c.d.t. colleges that data are recorded facts. You didn't object them. So,
> may I humble ask you, who and how could discredit facts? (outside Usenet
> discussion forums, I mean... (:-))

Navigational structures are unwieldy on a larger scale for most mortals. Dr. Codd introduced relational to reign in the chaos of the pasta machines that were growing around that time. OOP didn't fix the problems with navigational structures. Putting accessors around them was not a fix. A developer/designer must still know and manage relationships between objects.

> --
> Regards,
> Dmitry A. Kazakov

-T- Received on Mon Mar 03 2008 - 22:51:41 CET

Original text of this message