One key abstraction

From CSSEMediaWiki
(Difference between revisions)
Jump to: navigation, search
(See also)
(See also)
Line 9: Line 9:
 
* [[Single responsibility principle]]
 
* [[Single responsibility principle]]
 
* [[Separation of concerns]]
 
* [[Separation of concerns]]
 +
* [[Interface segregation principle]]

Revision as of 03:47, 7 October 2008

Riel's Heuristic #2.8

A class should represent one key abstraction of the domain model, no more and no less. A key abstraction is generally a noun in a requirements statement. If a key abstraction maps to more than one class, the designer may be representing each function of the abstraction as a class. If several key abstractions map to one class, the designer may be creating a centralized system and needs to split the class into several smaller classes.


See also

Personal tools