设计模式-单一职责原则

对于这一原则,准确的解释是:对于一个类而言,应该仅有一个引起它变化的原因。

我们在编程中,很容易会把一堆职责堆砌到同一个类里面,让这个类有很多种功能。**如果一个类承担的职责过多,就等于把这些职责耦合在一起。一个职责的变化,可能会削弱或抑制这个类完成其他职责的能力。**这种耦合会导致脆弱的设计。当变化发生时,设计会遭受到意想不到的破坏。

想象我们要做一款游戏,如果我们把界面显示、游戏逻辑判断、数据库访问等等,都写在同一个类里面。那当我们要将这个游戏移植到不同的平台的时候,或者我们想要换用另一种数据库的时候,就会非常困难,无从下手。因为这些内容都耦合在了一起。移植到不同的平台,主要是显示逻辑的改变,游戏的基本逻辑是没有变的,数据库访问也是没有变的。但如果它们和显示逻辑混在了一起,那么移植起来难度就非常大了。这就是单一职责原则。

在Web编程中,MVC的概念,其实也是单一职责原则的一种体现,让每一层都专心做自己的事情。在没有这个分层的时候,我们所有的代码都可以写在JSP中,界面显示、逻辑处理、数据库访问等等。这样如果我们要复用一块逻辑,就只能将代码复制出去。这样非常不利于维护,会导致大量的重复代码。而且一旦这一块逻辑需要修改,那么所有被复制过去的代码,都要修改。一不留神就会漏掉一些,导致隐藏的BUG出现。

让一个类能做的事情更加简单单一,这样才会让软件更加易维护、易扩展、易复用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值