美文网首页
《设计模式之蝉》 第一章 单一职责原则

《设计模式之蝉》 第一章 单一职责原则

作者: 阿闯学长 | 来源:发表于2018-01-31 23:52 被阅读9次

      单一职责的英文名称是Single Responsibility Principle,简称SRP,一个类只负责一个功能领域中相应职责,或者可以定义为:对一个类而言,应该只有一个引起它变化的原因。

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

    单一职责原则的好处:

    1. 类的复杂度降低,实现什么职责都有清晰明确的定义

    2. 可读性提高,复杂性降低

    3. 可维护性提高

    4. 降低变更引起的风险,变更是必不可少的,如果接口的单一职责做得好,一个接口修改只对相应的实现类有影响,对其他接口无影响,这对系统的维护行和扩展性都有非常大的帮助。


    比如我经常看到一些Android开发在Activity中写Bean文件,网络数据处理,如果有列表的话Adapter 也写在Activity中,问他们为什么除了好找也没啥理由了,把他们拆分到其他类岂不是更好找,如果Activity过于臃肿行数过多,显然不是好事,如果我们要修改Bean文件,网络处理和Adapter都需要上这个Activity来修改,就会导致引起这个Activity变化的原因太多,我们在版本维护时也会比较头疼。

    也就严重违背了定义“就一个类而言,应该仅有一个引起它变化的原因”。

    图片来源于网络

    相关文章

      网友评论

          本文标题:《设计模式之蝉》 第一章 单一职责原则

          本文链接:https://www.haomeiwen.com/subject/qpjrzxtx.html