User Tools

Site Tools


principles:single_responsibility_principle

Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
principles:single_responsibility_principle [2013-05-19 22:09]
127.0.0.1 external edit
principles:single_responsibility_principle [2018-10-14 12:00] (current)
christian [Principle Statement]
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'​s Law
 +  * Do One Thing
  
  
 ===== Context ===== ===== Context =====
 /* fill in contexts here: */ /* fill in contexts here: */
-  * [[contexts:​Object-Oriented Design]]  +  * [[contexts:​Object-Oriented Design]] 
 +  * [[contexts:​API Design]] 
 +  * [[contexts:​Architecture]] 
 +  * [[contexts:​User Interface Design]]
  
 ===== Principle Statement ===== ===== Principle Statement =====
  
-There should never be more than one reason ​for a [[glossary:​module]] ​to change.((compare [[http://​www.objectmentor.com/​resources/​articles/​srp.pdf|Robert C. Martin: Single Responsibility Principle]]))+There should never be more than one reason ​to change ​certain ​[[glossary:​module]].((compare [[http://​www.objectmentor.com/​resources/​articles/​srp.pdf|Robert C. Martin: Single Responsibility Principle]]))
  
  
Line 39: Line 43:
 ===== Origin ===== ===== Origin =====
 /* the *primary* source */ /* the *primary* source */
 +{{page>​resources:​Agile Software Development,​ Principles, Patterns, and Practices#​reference}}
  
 ===== Evidence ===== ===== Evidence =====
Line 72: Line 76:
 ===== 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:​Stub]] +/*[[wiki:​Stub]]*
-/*[[wiki:​Incomplete]]*/+[[wiki:​Incomplete]]
 /​*[[wiki:​Complete]]*/​ /​*[[wiki:​Complete]]*/​
  
 ===== Further Reading ===== ===== Further Reading =====
  
-  * Robert C. Martin//Agile Software Development,​ Principles, Patterns, and Practices//+  * {{page>​resources:Agile Software Development,​ Principles, Patterns, and Practices#​reference}}
   * [[http://​www.butunclebob.com/​ArticleS.UncleBob.PrinciplesOfOod|ButUncleBob:​ Principles of OOD]]   * [[http://​www.butunclebob.com/​ArticleS.UncleBob.PrinciplesOfOod|ButUncleBob:​ Principles of OOD]]
   * [[wiki>​SingleResponsibilityPrinciple]]   * [[wiki>​SingleResponsibilityPrinciple]]
Line 85: Line 89:
   * [[wp>​Separation of Concerns]]   * [[wp>​Separation of Concerns]]
   * [[http://​blog.8thlight.com/​cory-foy/​2012/​08/​07/​thinking-differently-about-srp.html|Thinking Differently About the Single Responsibility Principle]]   * [[http://​blog.8thlight.com/​cory-foy/​2012/​08/​07/​thinking-differently-about-srp.html|Thinking Differently About the Single Responsibility Principle]]
 +  * Coding Horror: [[http://​blog.codinghorror.com/​curlys-law-do-one-thing/​|Curly'​s Law: Do One Thing]]
 +
 +===== Discussion =====
  
 +Discuss this wiki article and the principle on the corresponding [[talk:​principles:​Single Responsibility Principle|talk page]].
principles/single_responsibility_principle.1368994162.txt.gz · Last modified: 2013-06-15 15:39 (external edit)