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

From: Bob Badour <>
Date: Sat, 1 Sep 2001 08:56:03 -0400
Message-ID: <lV4k7.623$>

Jim Melton wrote in message <>...
>Bob Badour wrote:
>> Jim Melton wrote in message <9mm9gc$>...
>> >
>> >"Sascha Bohnenkamp" <> wrote in message
>> >
>> >> well, but with a RDBM you are able to put contraints etc. into your
>> >> tables to
>> >> enforce a consistent state of the data. AND this is visible without
>> >> reading the C++ (or whatever)
>> >> sources ...
>> >This is purely subjective. SQL is still programming and is somewhat more
>> >difficult to debug than "classic" programming languages.
>> I disagree that constraint declaration is programming. The ISO standard
>> vocabulary requires a program to have both declarations and instructions
>> satisfy some particular task. A constraint declaration is not a program
>> more than a conceptual analysis is a program.
>Deciding what your constraints will be is analysis. However, expressing
>constraints in a way your database can interpret them requires a language.

True. I prefer that analysists express constraints as simple english text, but that does not prevent them from using another.

>Translating concepts to computer languages is programming (in my book, if
>ISO's :-).

Declaring constraints in a data language is not programming because it involves no instructions to satisfy any particular task.

Writing a stored procedure is programming. Writing a trigger is programming. Declarations are not programmes; although, programmes require declarations.

>Since you like to be very precise with your language, I would submit
>that my definition of "programming" is not contrary to your stated
>of "a program". One is a verb and the other is a noun.

Your definition is contrary. Declarations do not express instructions to satisfy any particular task.

>> I understand that ODBMSes require one to program in order to enforce
>> integrity because they generally treat integrity enforcement as nothing
>> than a sub-task in every other task (or method, if you prefer).
>Well, it depends. If you mean referential integrity, your statement is not
>universally true. If, on the other hand, you mean constraints such as "a
>location is expressed as a latitude/longitude pair in decimal degrees where
>east/north are positive" then yes, ODBMS require programming. And so, I
>would any other database.

Nope. Such a declaration is still just a declaration. Where does one define pre- and post-conditions? What are pre- and post-conditions? What about other invariants and assertions? OO proponents have widely stipulated in this thread and other recent threads that constraints are baked into methods such as insert and delete. Received on Sat Sep 01 2001 - 14:56:03 CEST

Original text of this message