Tactics and Principles Flashcards
Explain the Component Cohesion principle Reuse and Release (REP)
- Easier reuse: single components could be used in other contexts
- Easier replacement / release of new versions: single components can be newly released and integrated into the system
Explain the Component Cohesion principle Common Closure Principle (CCP)
Gather classes together into one component that change for the same reason at the same time
Explain the Component Cohesion principle Common Reuse Principle (CRP)
Don’t force users of a component to depend on things
they don’t need
Need the 3D engine? You get the whole game
Explain the Component Coupling Principle The Acyclic Dependencies Principle (ADP)
Do not allow cycles in the component dependency
graph. (THIS MEANS NO LOOPS IN THE “UML”)
Explain the Component Coupling Principle The Stable Dependencies Principle (SDP)
Components are hard to change when OTHERS COMPONENT DEPEND ON IT.
Depend in the direction of stability
“The SDP says: less stable components should depend on more stable ones and not vice versa.”
Explain the Component Coupling Principle The Stable Abstractions Principle (SAP)
A component should be as abstract as it is stable