Beware inheritance over composition
From CSSEMediaWiki
Revision as of 22:18, 28 July 2009 by Matthew Harward (Talk | contribs)
Whenever there is inheritance in an object-oriented design ask yourself two questions: 1) Am I a special type of the thing I'm inheriting from? and 2) Is the thing I'm inheriting from part of me? -- Riel's Heuristic 6.2, Arthur Riel 1996
Explanation
Riel believes that inheritance should be treated with care. Before using it, the design decision should be questioned. Does it make sense for this class to be a subclass of another, is the class actually a generalised type of me?