代码大全学习-10-高质量的函数(High-Quality Routines)

本文讨论了创建高质量函数的重要性,强调了高内聚、功能单一的函数设计目标。良好的函数命名应准确描述其功能,长度应控制在合理范围内,接口清晰,参数数量适中并有明确注释。此外,慎用宏函数和内联函数,以保持代码的可读性和封装性。
摘要由CSDN通过智能技术生成

讲完了高质量的类,第七章就接着讲了高质量的函数。

函数设计目标

要创建函数的原因像创建类的原因一样有很多:降低复杂性;引入便于理解的抽象;避免重复的代码;支持子类;隐藏顺序执行的过程;隐藏指针操作;增加可移植性;简化复杂的布尔逻辑;提高性能等等,最核心的也还是降低复杂性。有时候我们不要因为一个函数只有一行代码就不去创建它,有可能这一行代码会在很多地方重复使用,而万一哪一天你要改它,一个杯具就此产生。

设计函数的目标就是要达到高内聚性(cohesion),最高的内聚就是功能性的内聚(functional cohesion),也就是一个函数做一件事,并且只做那一件事。这样的函数单纯,简单,会降低复杂性。比如函数Cosine(),它就只求余弦值,就是很好的功能内聚。其实叫功能内聚也好,高内聚也好,什么叫法都无所谓,关键是理解这背后体现的思想,尽量向一个函数做且只做一件事靠拢。

函数名

做到了高内聚,还要给函数取个好名字。什么样的名字才叫好呢?一句话就是能够描述函数所做的所有事情。像Cosine这样的函数名就很好,言简意赅,一目了然。所以高内聚的函数很好取名字。具体来说呢还有一些规则:

  • 第一,不要用含义模糊的动词
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值