定义:应该且仅有一个原因引起类的变更。
理解:
假设一个类承担的职责过多,就等于把这些职责耦合在一起。一个职责的变化可能会削弱或者抑制这个类完毕其它职责的能力,
这样的耦合会导致脆弱的设计。当变化发生时,设计会遭受到意想不到的破坏。
假如一个类A,有两个职责a。b。当职责a因为需求发生变化而须要改动时。有可能会导致职责b的功能发生问题。
解决:
将类中的职责分开。分别建立两个类。
假设是面向接口编程的话,就是将两个职责抽象成为两个不同的接口,原接口再实现这两个接口。
单一职责原则的优点:
1.类的复杂性减少
2.可读性提高
3.可维护性提高
4.变更引起的风险减少