<<< Optional info about subclasses and superclasses | Index | Use cases >>> |
Finding Classes, continued:
Inheritance (generalization) is used to represent commonality among concepts.
Commonality must be actively sought.
Generalization and classification are high-level activities that yield lasting results.
Classification should be of aspects of our own model, not aspects valid in other areas.
For example, in mathematics a circle is a kind of an ellipse, but in most programs a circle should not be derived from an ellipse or an ellipse derived from a circle. The often heard arguments because that's the way it is in mathematics is not conclusive and most often wrong.
In most systems circle and ellipse will provide independent sets of operations that are not subsets of each other.
<<< Optional info about subclasses and superclasses | Index | Use cases >>> |