为什么类不能过长?

为什么类不能过长?

目录

  • 类过长:读不通,扩展不通
  • 类过长:可能有冗余代码
  • 类过长:多半是职责过多

类过长:读不通,扩展不通

读不通 - 直接用滚轮滚都得好几秒,就算是原开发者,时间长了恐怕也难以理清整个类,更不用说是其他的人

扩展不通 - 一个类有过多的接口,会让扩展这个类变得异常困难,一动千行

类过长:可能有冗余代码

冗余代码,就是重复代码

冗余代码的危害非常大:

冗余代码使方法、类过长,不简洁

冗余代码会造成发散式修改

类过长:多半是职责过多

一个类开放几十个接口,绝对存在职责过多的问题

违反设计原则 - 单一职责原则(单一职责原则要求一个类只实现一个职责),违反了这个原则会导致发散式变化、发散式修改、类过长等代码问题,还会让你的类难以扩展,甚至会让其他程序猿认为你不专业。

发散式变化(指引发此类修改的地方很多),如果一个类的职责很多,那它的扇入(调用者)一定很多,每个调用者的修改都有可能让你这个类不得不随之修改,也就是发散式变化。

发散式修改(指此类修改引发修改的地方很多),相同的,如果一个类职责很多,那支撑它实现的下级,即扇出(被调用方)一定很多,如果此类逻辑发生变动,所有下级被调用者可能都得随之修改,也就是发散式修改。

难以扩展:如果你的一个类接口非常多,那它的子类怎么办?它的包装类怎么办?难道全部都要实现这么多接口,全部都要承担同样多的职责吗?扩展起来真的非常麻烦。

触发机关:【测试之怒】【运维之怒】

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

itlanmao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值