Avoid concrete base classes

From CSSEMediaWiki
Revision as of 04:18, 2 September 2008 by Elliot Fisher (Talk | contribs)
Jump to: navigation, search

Riel's heuristic #5.7: All base classes should be abstract classes.

What does Riel mean? Does he give an example? Have we got any examples of our own? Do we believe Riel?

Riel states that all base classes of an inheritance hierarchy should be abstract. Note that this does not mean that single classes with no inheritance hierarchy should be made abstract, as this would mean a concrete subclass would have to be created that adds no meaningful functionality - this violates Heuristic 3.7; Eliminate irrelevant classes.

More to come...

See also

Personal tools