Re: Clean Object Class Design -- What is it?

From: Mikito Harakiri <nospam_at_newsranger.com>
Date: Sat, 21 Jul 2001 23:33:55 GMT
Message-ID: <%go17.9887$Kf3.112760_at_www.newsranger.com>


In article <9i52cq$kra$0_at_dosa.alt.net>, Chris Smith says...
>
>
>"Mikito Harakiri" <nospam_at_newsranger.com> wrote ...
>> I see that in my organization:-( Most of the developers see relational
 database
>> as some king of physical storage. They write multiple APIs to access the
 data
>> (sometimes not only for modification, but for reading the data as well!).
 Some
>> other groups write APIs upon those APIs and naively think that they raize
 the
>> application abstraction level!
>
>It goes without saying, of course, that if your developers are going to
>rewrite code several times to access data from the database, then you need
>data integrity checks in the database itself, to prevent some really nasty
>stuff from happening. The question is, if the data is globally accessible
>via a given API from a central location, through an OOP-style remote call
>interface, then why is this a bad thing?

Because making calls through APIs -- object or not -- is inferior to quering. You are essentially limited by the design what API developers thought the access path to the database might be. Every time you need to do something that they didn't envision, you have to beg them with enhancement request.

>> Where formerly I was able to quickly figure out
>> the functionality from data model, I'm now forced to debug their spagetti
 code
>> in order to understand how their dumb API works.
>
>Is your criticism of the technique, then, that you think an object oriented
>programming API is harder to understand and use than a relational database?
>I'd think quite the opposite, to object oriented programmers. Or is your
>criticism that you don't like your developers, which no one can do anything
>about? I've met several relational database people that I don't like, too.

Object Oriented programmong is easier to learn, because there is no substance to it. In fact, I learned C++ before Relational Model. Reading relational afterwards was like: "OK, here is inheritance, and there is containment; why relational folks don't understand it?"

Math background usually makes one to appreciate relational model. Unfortunately, it's unrealistic to expect most of the programmers to have any significant math background. Received on Sun Jul 22 2001 - 01:33:55 CEST

Original text of this message