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

From: Chris Smith <cdsmith_at_twu.net>
Date: Sat, 21 Jul 2001 23:32:55 GMT
Message-ID: <9hqjpq$it8$0_at_dosa.alt.net>


"Bob Badour" <bbadour_at_golden.net> wrote ...
> Well, if nobody can define what "clean" is, my initial question is already
> answered. OODB has no deterministic method to guide any part of design. In
> the end, users are at the mercy of the unique mental heuristics of the
> programmer who develops the model. If they have a good, experienced,
 highly
> skilled and productive programmer, they might do okay. However, what
> percentage of programmers out there fall into the above category?

I'm not quite sure what you mean by "OODB has no..." above. As far as I can make out, "OODB" is a term that means different things for different vendors, with the one underlying commonality that it's supposed to be a means of persistence appropriate to object-oriented systems. I thought we were talking about object oriented design, which is entirely independent of the existence of an OODB or object-relational database, or whatever other funny sounding words database vendors want to make up.

My impression is that you're judging object oriented class design on data consistency standards. Object oriented design judges a class design on utility to solve the problems that occur in a problem domain. There exist no set of deterministic behaviors that can judge the appropriateness of any system to solve interesting problems in a real-world problem domain; whether object oriented or anything else.

To many people, it makes sense to have intelligent human being, in conjunction with people who understand the problem domain, build a set of vocabulary and behavior and yes, even data collections, that solves that set of problems. Afterwards, if data persistence is required (and it mostly is), then you put in data persistence. You probably do it by talking to a database, maybe even to a well-normalized database designed according to deterministic standards... if that it what makes it easiest to get data to and from persistent storage in a consistent manner.

> I didn't realise the goal was to make the software crisis worse than it
> already is.

Apologies in advance, but I tend to lose respect for anyone who insists on referring to the state of software development as a crisis. That's an emotional appeal with little basis in reality. Just about every piece of interesting communications or data processing infrastructure on this planet runs on software, not because it's in a state of crisis but because it's vastly successful at increasing productivity and enabling new approaches that were never practical before.

I know I never have trouble delivering, to my clients, software that increases their productivity and makes their business run more smoothly. I find the same to be the case at least 90-95% of the time when working with software developed elsewhere. I'm not saying bug-free... I'm saying far better than the alternative.

Chris Smith Received on Sun Jul 22 2001 - 01:32:55 CEST

Original text of this message