User Tools

Site Tools


collections:grasp

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revisionBoth sides next revision
collections:grasp [2021-09-02 11:35] – old revision restored (2021-05-11 18:56) 65.21.179.175collections:grasp [2021-09-02 17:01] – old revision restored (2021-05-11 18:56) 65.21.179.175
Line 3: Line 3:
 Craig Larman describes how to assign responsibilities to classes using the following principles and patterns: Craig Larman describes how to assign responsibilities to classes using the following principles and patterns:
  
-  * [[principles:Controller]] +  * Controller 
-  * [[principles:Creator]]+  * Creator
   * [[principles:High Cohesion]]   * [[principles:High Cohesion]]
-  * [[patterns:Indirection]]+  * Indirection
   * [[principles:Information Expert]]   * [[principles:Information Expert]]
   * [[principles:Low Coupling]]   * [[principles:Low Coupling]]
-  * [[patterns:Abstract Coupling|Polymorphism]] +  * Polymorphism 
-  * [[patterns:Protected Variations]] +  * Protected Variation 
-  * [[pattern:Pure Fabrication]]+  * Pure Fabrication
  
-He calls GRASP "patterns of general principles in assigning responsibilities"((Craig Larman: //[[resources:Applying UML and Patterns|Applying UML and Patterns – An Introduction to Object-Oriented Analysis and Design and Iterative Development]]// p. 219)). Some of these are really patterns but others are principles.+He calls GRASP "patterns of general principles in assigning responsibilities"((Craig Larman: //Applying UML and Patterns – An Introduction to Object-Oriented Analysis and Design and Iterative Development// p. 219)). Some of these are really patterns but others are principles. The latter are links in the above list.
  
  
 ===== Origin ===== ===== Origin =====
  
-  * {{page>resources:Applying UML and Patterns#reference}}+  * Craig Larman//Applying UML and Patterns – An Introduction to Object-Oriented Analysis and Design and Iterative Development//
  
  
Line 27: Line 27:
 ===== Box ===== ===== Box =====
  
-^   **[[collections:GRASP]]**   ^^^^^^ +^   **[[collections:GRASP]]**   ^^^^^^^ 
-^   Principles|   [[principles:Information Expert]]     [[principles:High Cohesion]]     [[principles:Low Coupling]]     [[principles:Creator]]      |   [[principles:Controller]]    | +^   Principles|   [[principles:Information Expert]]     [[principles:High Cohesion]]     [[principles:Low Coupling]]   | 
-  Patterns |   [[patterns:Indirection]]   |   [[patterns:Abstract Coupling|Polymorphism]]   |   [[patterns:Protected Variations]]   |   [[patterns:Pure Fabrication]]   |+  Non-Principles|   Controller   |   Creator   |   Indirection     Polymorphism     Protected Variation   |   Pure Fabrication   |
collections/grasp.txt · Last modified: 2021-10-18 22:21 by christian