我去 这篇讲“设计模式七大原则中单一职责原则”的文章有点东西
上一个轮的加班刚刚完结还没一周,领导就跑来告诉我:“小菜鸟,周末跟加班才更般配哟!”可怜的孩子又迎来了新的加急任务,美好的加班生活又要开始喽。
不!这不是菜鸟想要的生活,菜鸟要反抗,菜鸟决定了,要辞职。这不偷偷拿出手机登录各大招聘网站进行了浏览,突然发现怎么招聘还要求会设计模式那?为此赶紧拿出那早已沾满灰尘的资料进行恶补。哎!在这之前还是扶我起来加班吧。
以上内容纯属虚构(除了加班),如有雷同请看下文。
今天让我们一起学习一下设计模式七大原则之——单一职责原则。
基本概念
拿java的类来说单一职责原则,就是一个类只负责一项职责,也可以称之为一项功能。
单一职责带来的好处
1、一个类只负责一项职责,最直接的好处就是降低类的复杂度。2、职责的单一会提高类的可读性,提高程序的可维护性,降低后期维护成本。3、因其只负责一项功能,所以当代码变动时不会影响到到其他功能,从而大大降低变更引起的风险。
理论知识就讲到这里,下面让我们看一段示例代码,从而加深一下对单一职责原则的理解。
代码时间
违反了单一职责原则的示例代码:
注:吃肉和吃草是两种行为,该类却写在一起了,典型的违反了单一职责原则。并且这样设计在之后需要添加吃其它食物的功能时需要再增加一个else if,当功能增多并且逻辑复杂时,会造成代码非常臃肿,难以理解和维护。
类级别遵守单一职责原则的示例代码:
在方法级别遵守单一职责原则的示例代码:
个人意见
1、单一职责虽好,但也不可以生搬硬套,不然会引起类的增多,添加额外的维护成本。2、当代码的逻辑足够简单时,我们可以在代码级别违反单一职责原则;3、当类中的方法数量少,并且业务逻辑不是特别复杂时,可以在类级别上违背单一职责原则,下沉至方法级别保持即可。4、我们要根据需求和实际情况来灵活运用单一职责原则。
总体来说就是需要灵活运用单一职责原则,结合实际情况考虑是在类级别遵守还是在方法级别遵守。
今天的分享就到这里了,感觉文章不错的记得点赞加关注呦!