Johnson and Foote's heuristics

From CSSEMediaWiki
(Difference between revisions)
Jump to: navigation, search
Line 2: Line 2:
  
 
[[Johnson and Foote 1988]]
 
[[Johnson and Foote 1988]]
 +
 +
** [[Recursion introduction]]
 +
** [[Eliminate case analysis]]
 +
** [[Reduce the number of arguments]]
 +
** [[Reduce the size of methods]]
 +
** [[Class hierarchies should be deep and narrow]]
 +
** [[The top of the class hierarchy should be abstract]]
 +
** [[Minimize accesses to variables]]
 +
** [[Subclasses should be specializations]]
 +
** [[Split large classes]]
 +
** [[Factor implementation differences into subcomponents]]
 +
** [[Separate methods that do not communicate]]
 +
** [[Send messages to components instead of to self]]
 +
** [[Reduce implicit parameter passing]]

Revision as of 11:30, 6 October 2008

See [Designing Reusable Classes]

Johnson and Foote 1988

Personal tools