最简单直接地理解Java软件设计原则之单一职责原则

理论性知识

定义

单一职责原则, Single responsibility principle (SRP);

一个类,接口,方法只负责一项职责;

不要存在多余一个导致类变更的原因;

优点

  • 降低类的复杂度
  • 提高类的可读性
  • 提高系统的可维护性
  • 降低变更引起的风险
  • 特别说明

    在我们的实际开发中,很多类或者方法都不完全符合单一职责原则。其实设计原则就是一种指导思想, 并不是要求开发人员必须遵守。根据实际业务需求,在能满足的情况下,尽可能去满足设计原则,这样才更有利于项目的后期维护和优化。

    代码实战

    非单一职责代码demo

    首先还是定义一个手机接口,如下图

    定义一个手机类,如下图

    单一职责代码demo

    上述demo中,手机接口包含属性方法和功能方法。为满足单一职责,需要进行拆分。

    定义一个手机属性信息接口,如下图

    定义一个手机行为接口,如下图

    定义一个手机类,实现上图中两个接口,如下图

    这样做的好处就是可以单独实现属性信息接口或行为接口。

    下面继续看一个方法级别的单一职责demo

    序 1对应的方法是更新姓名和地址,

    序 2对应的方法是根据条件判断更新姓名或地址,

    序 3对应的方法是更新姓名,

    序 4对应的方法是更新地址,

    很显然,1和2不符合单一职责。3和4符合单一职责。

    写在最后

    上面的代码和举例,就是为了简单直接说明单一职责原则设计原则。不要过度分析细节。

    声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

    上一篇 2021年1月2日
    下一篇 2021年1月2日

    相关推荐