principles:single_responsibility_principle
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
principles:single_responsibility_principle [2012-12-22 10:16] – external edit 127.0.0.1 | principles:single_responsibility_principle [2021-10-18 22:01] (current) – +++ restored +++ christian | ||
---|---|---|---|
Line 5: | Line 5: | ||
* One Responsibility Rule | * One Responsibility Rule | ||
* Separation of Concerns (this originally was a broader term but is mostly used just like SRP) | * Separation of Concerns (this originally was a broader term but is mostly used just like SRP) | ||
+ | * Curly' | ||
+ | * Do One Thing | ||
===== Context ===== | ===== Context ===== | ||
/* fill in contexts here: */ | /* fill in contexts here: */ | ||
- | * [[contexts: | + | * [[contexts: |
+ | * [[contexts: | ||
+ | * [[contexts: | ||
+ | * [[contexts: | ||
===== Principle Statement ===== | ===== Principle Statement ===== | ||
- | There should never be more than one reason | + | There should never be more than one reason |
Line 30: | Line 34: | ||
===== Strategies ===== | ===== Strategies ===== | ||
+ | |||
+ | |||
+ | ===== Caveats ===== | ||
+ | |||
+ | See section [[#contrary principles]]. | ||
===== Origin ===== | ===== Origin ===== | ||
/* the *primary* source */ | /* the *primary* source */ | ||
+ | {{page> | ||
===== Evidence ===== | ===== Evidence ===== | ||
Line 50: | Line 59: | ||
==== Generalizations ==== | ==== Generalizations ==== | ||
- | * [[principle:High Cohesion]] | + | * [[High Cohesion]] |
+ | * [[Encapsulate the Concept that Varies]] (ECV) | ||
==== Specializations ==== | ==== Specializations ==== | ||
Line 58: | Line 67: | ||
==== Complementary Principles ==== | ==== Complementary Principles ==== | ||
- | * [[principles: | ||
==== Principle Collections ==== | ==== Principle Collections ==== | ||
{{page> | {{page> | ||
- | ===== Example | + | ===== Examples |
===== Description Status ===== | ===== Description Status ===== | ||
/* Choose one of the following and comment out the rest: */ | /* Choose one of the following and comment out the rest: */ | ||
- | [[wiki: | + | /*[[wiki: |
- | /*[[wiki: | + | [[wiki: |
/ | / | ||
===== Further Reading ===== | ===== Further Reading ===== | ||
- | * Robert C. Martin: //Agile Software Development, | + | * {{page> |
* [[http:// | * [[http:// | ||
* [[wiki> | * [[wiki> | ||
Line 81: | Line 89: | ||
* [[wp> | * [[wp> | ||
* [[http:// | * [[http:// | ||
+ | * Coding Horror: [[http:// | ||
+ | |||
+ | ===== Discussion ===== | ||
+ | |||
+ | Discuss this wiki article and the principle on the corresponding [[talk: | ||
principles/single_responsibility_principle.txt · Last modified: 2021-10-18 22:01 by christian