面向对象一:单一职责原则(转)

2018-04-11  本文已影响17人  精神病患者link常

含义:就是对一个类而言,应该仅有一个引起变化的原因,也就是说 一个类应该只负责一件事情

如果一个类负责了方法M1,方法M2两个不同的事情,当M1方法发生变化的时候,我们需要修改这个类的M1方法,但是这个时候就有可能导致M2方法不能工作。也就是说职责M1和M2被耦合在了一起。
这个不是我们期待的,但是由于这种设计却很有可能发生。所以这个时候,我们需要把M1方法,M2方法单独分离成两个类。让每个类只专心处理自己的方法。

单一职责原则的好处如下:

1.可以降低类的复杂度,一个类只负责一项职责,这样逻辑也简单很多
2.提高类的可读性,和系统的维护性,因为不会有其他奇怪的方法来干扰我们理解这个类的含义
3.当发生变化的时候,能将变化的影响降到最小,因为只会在这个类中做出修改。

❗️单一职责原则是实现高内聚、低耦合的指导方针,它是最简单但又最难运用的原则
❗️类的多重职责要进行分离。
❗️两个完全不一样的功能就不应该放在一个类中。一个类中应该是一组相关性很高的函数、数据的封装

单一职责原则告诉我们:一个类不能太“累”!在软件系统中,一个类(大到模块,小到方法)承担的职责越多,它被复用的可能性就越小,而且一个类承担的职责过多,就相当于将这些职责耦合在一起,当其中一个职责变化时,可能会影响其他职责的运作,因此要将这些职责进行分离,将不同的职责封装在不同的类中,即将不同的变化原因封装在不同的类中,如果多个职责总是同时发生改变则可将它们封装在同一类中。

上一篇下一篇

猜你喜欢

热点阅读