Re: What databases have taught me

From: topmind <topmind_at_technologist.com>
Date: 28 Jun 2006 20:05:27 -0700
Message-ID: <1151550327.420361.248520_at_y41g2000cwy.googlegroups.com>


Robert Martin wrote:
> On 2006-06-23 11:10:25 -0700, "Aloha Kakuikanu"
> <aloha.kakuikanu_at_yahoo.com> said:
>
> >
> > Dmitry A. Kazakov wrote:
> >> On 23 Jun 2006 10:00:32 -0700, Aloha Kakuikanu wrote:
> >>
> >>> queisser wrote:
> >>>> Things like "devices" or "windows" or "customers" can be reasonable
> >>>> classes in a hierarchy but at the top level things are not as clear.
> >>>
> >>> I challenge the idea that customer is a usefull class. What kind of
> >>> methods does it have other than "getName" "setName" and alike?
> >>
> >> Cancel_Project
> >
> > Order.cancel()? This is really about canceling a transaction. You have
> > to study transaction management in order to implement this
> > functionality correctly. Inheritance and polymorphish doesn't help
> > here, sorry.
>
> Again, this depends. If there are several different types of customer
> (e.g. GovernmentContractor, privateContractor, foreignContractor) you
> might find that each of these different types must follow a different
> procedure in order to cancel an order.

Arrrrrg! Hierarchy taxonomies (sub-types) of people, companies, or products is a BIG NO-NO! Even you agreed that "OO is not about hierarchies".

> --
> Robert C. Martin (Uncle Bob) | email: unclebob_at_objectmentor.com

-T- Received on Thu Jun 29 2006 - 05:05:27 CEST

Original text of this message