In article <lagrone.188@dseg.ti.com>, lagrone@dseg.ti.com (David LaGrone) writes:
...
> I believe that I come from a position of wanting to minimize the number
> of defects in my software systems.
> This being th' case, it would seem t' me that abstraction and data
> hiding contribute more directly to minimizing defects than does the
> use of inheritance. However, I am open...and interested, in dis-
> cussions to th' contrary.
What happens when inheritance is used to support the use of abstraction?
Consider a program that is well-organized as a set of cooperating
abstractions. These abstractions have a client-server relationship: one
abstraction provides the vocabulary or the algorithmic structure for
another. The `problem' is successively re-expressed in terms that get
closer and closer to the machine, with the abstractions and their
client-server relationships forming a DAG.
There are several ways for an abstraction to offer its `services' to
another. These include function calls, objects to be used, types to
be instantiated, generics to be instantiated, _and types from which
to inherit._
--
(This man's opinions are his own.)
From mole-end Mark Terribile
mat@mole-end.matawan.nj.us, Somewhere in Matawan, NJ
|