为什么需要复用性更好的函数

如何复用性更好的函数,可能是软件开发者追求的目标之一.

为什么要求复用性好?或者复用性好的函数能带来什么好处?我们可能需要看看它的反面:复用性不好带来了什么坏处?
1. 无法复用的函数,在扩展新功能时,必须要另外新增一个函数.
久而久之, 代码量会变大,维护会需要更多的人力和时间.

2. 无法复用的函数,在测试方面可能会变得困难.
一个函数的使用,乐观的目标是传入相同的参数,得到一个相同的返回值,不受调用次数的限制.但是复用性不好的函数可能在2次以上的调用时返回不相同的值,即使传入参数完全一致.想象下,测试一次和多次结果居然不一致,以哪次为正确标准. 这样的不可测性,是软件开发维护的噩梦, 很像定时炸弹.

3. 无法复用的函数,很可能是无法重入的.
太多的无法复用的函数, 在多线程重入时,其返回值不可控.

4. 大量无法复用的函数,出现bug, 会导致修改量和测试工作量增大.
因为无法复用,所以大量新增函数来实现新的功能,但是大量复用性不好的函数,修改bug, 即使是相同原因的bug,其修改量和测试工作量剧增. 需要说明的是: 其中的工作量很大部分是重复的.

通过以上无法复用函数的坏处,我们来看看复用性好的优点:
1. 复用性好, 代码量会变小, 代码收敛.
代码量小,自然维护的人力和时间就会下降;

2. 复用性好, 测一次和测多次返回值一致.
复用性好,至少保证了可测性,无论多少次单元测试,结果一致.

3. 复用性好的函数, 不能保证可重入.
但是可复用至少是可重入的前提基础.

4. 复用性好, 修改bug的工作量也减少.
复用性好, 相同原因导致的bug需要修改的代码量自然降低.

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值