单一职责原则(SRP:Singlere sponsibility principle):就一个类而言,应该仅有一个引起它变化的原因。
*如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变化发生时,设计会遭受到意想不到的破坏。
*软件设计真正要做的许多内容,就是发现职责并把那些职责相互分离。
*如果你能够想到多于一个的动机去改变一个类,那么这个类就具有多于一个的职责。
之所以会出现单一职责原则就是因为在软件设计时会出现以下类似场景:
T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障。也就是说职责P1和P2被耦合在了一起。
============================================
1.单一职责原则 Singlere Sponsibility Principle(SSP):描述的意思是每个类都只负责单一的功能,切不可太多,并且一个类应当尽量的把一个功能做到极致。
2.里氏替换原则 Liskov Substituition Principle(LSP):这个原则表达的意思是一个子类应该可以替换掉父类并且可以正常工作。
3. 接口隔离原则 Interface Segregation Principle(ISP):也称接口最小化原则,强调的是一个接口拥有的行为应该尽可能的小。
4. 依赖倒置原则 Dependence Inversion Principle(DIP):这个原则描述的是高层模块不该依赖于低层模块,二者都应该依赖于抽象,抽象不应该依赖于细节,细节应该依赖于抽象。
5.迪米特法则 Law of Demeter(LOD):也称最小知道原则,即一个类应该尽量不要知道其他类太多的东西,不要和陌生的类有太多接触。
6.开闭原则 Open-Close Principle(OCP):对修改关闭,对扩展开放