Distribute system intelligence

From CSSEMediaWiki
(Difference between revisions)
Jump to: navigation, search
m (Reverted edits by Ebybymic (Talk); changed back to last version by Stephen Fitchett)
 
(One intermediate revision by one user not shown)

Latest revision as of 03:10, 25 November 2010

Distribute system intelligence horizontally as uniformly as possible, i.e. the top level classes in a design should share the work uniformly. --Riel's Heuristic 3.1, Arthur Riel 1996

Description

From chapter 3.3 of Arthur Riel 1996, Riel describes the "god class problem":

The behavioral form of the god class problem is caused by a common error among action-oriented developers in the process of moving to the object-oriented paradigm. These developers attempt to capture the central control mechanism so prevalent in the action-oriented paradigm within their object-oriented design. The result is the creation of a god object that performs most of the work, leaving minor details to a collection of trivial classes. There are a number of heuristics that work together cooperatively toward the avoidance of these classes.

This heuristic follows from that.