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 [2021-09-02 12:27] – old revision restored (2021-05-19 11:17) 65.21.179.175 | 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 ==== | ||
| - | * [[principles:High Cohesion]] | + | * [[High Cohesion]] |
| + | * [[Encapsulate the Concept that Varies]] (ECV) | ||
| ==== Specializations ==== | ==== Specializations ==== | ||
| Line 62: | Line 71: | ||
| {{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 80: | 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.1630578420.txt.gz · Last modified: by 65.21.179.175
