单一职责原则(SRP)
2014-05-15 09:10
176 查看
一个类应仅有一个引起它变化的原因.
内聚性.
每个Responsibility都是变化的一个轴线.当需求变化时,该变化会反映为类的职责的变化
当一个类耦合了多个职责时,一个职责的变化会消弱或抑制其他职责的能力.这种耦合导致了fragile的设计.
职责.A reson for change.
一个类负担的N个职责是否应该分开.取决于APP变化的方式.如果程序变化总是导致N个职责同时变化,那么不必.而反之需要解耦这些职责.
变化的轴线仅当实际发生时才有意义,在没有征兆时应用SRP或者其他原则都是不明智的.
解耦职责后,肯定会有一个kludge杂凑物来耦合这些职责,但是除了main外,都不需要知道它的存在,所以它不影响依赖关系.
当需求变化时,引起了类中无关联部分的联动修改,即产生了fragile时,应将实现该需求的职责部分从该类中解耦.
一个含有业务规则和持久化控制的类,在多数情况下应该将两个职责进行分离.
内聚性.
每个Responsibility都是变化的一个轴线.当需求变化时,该变化会反映为类的职责的变化
当一个类耦合了多个职责时,一个职责的变化会消弱或抑制其他职责的能力.这种耦合导致了fragile的设计.
职责.A reson for change.
一个类负担的N个职责是否应该分开.取决于APP变化的方式.如果程序变化总是导致N个职责同时变化,那么不必.而反之需要解耦这些职责.
变化的轴线仅当实际发生时才有意义,在没有征兆时应用SRP或者其他原则都是不明智的.
解耦职责后,肯定会有一个kludge杂凑物来耦合这些职责,但是除了main外,都不需要知道它的存在,所以它不影响依赖关系.
当需求变化时,引起了类中无关联部分的联动修改,即产生了fragile时,应将实现该需求的职责部分从该类中解耦.
一个含有业务规则和持久化控制的类,在多数情况下应该将两个职责进行分离.
相关文章推荐
- 单一职责原则(SRP)
- 大话设计模式读书笔记2----单一职责原则(SRP)
- 敏捷软件开发(五):单一职责原则(SRP)
- 敏捷设计原则之一:单一职责原则(SRP)
- 单一职责原则(SRP)
- 设计模式值六大原则——设计模式之六大原则——单一职责原则(SRP)
- 小话设计模式原则之:单一职责原则SRP(C#篇)
- OOD设计原则之单一职责原则(SRP)
- 软件设计原则----单一职责原则(SRP)
- 单一职责原则——single responsibility principle, srp
- 【面向对象设计原则】之单一职责原则(SRP)
- 面向对象OOP的5原则:单一职责原则--SRP
- [设计模式原则]单一职责原则(Single Responsibility Principle,SRP)
- 单一职责原则 (Single Responsibility Principle,SRP)
- 设计原则之一:单一职责原则(SRP)
- 单一职责原则(SRP - Single Responsibility Principle)
- 设计模式-单一职责原则[SRP]
- 设计模式之六大原则——单一职责原则(SRP)
- 单一职责原则(SRP)
- 敏捷软件开发第二部分(SRP:单一职责原则)