代码整洁之道–函数
函数
1.短小
作者认为函数应该尽量短小,最多20行左右。
代码换最好只有一行,例如if()只有一行,用于调用函数。
函数的缩进也尽量一层到两成
2.只做一件事
一个函数应该只做一件事,做好一件事
判断是不是做一件事的方法:看看能不能再拆出一个函数。
3.每个函数一个抽象层级
向下规则:每一个函数下边跟着位于下一层级的函数
类似于:
我要去公司上班就要先梳洗再坐车再打卡
我要梳洗就要先洗脸再刷牙
我要洗脸就要先防水
感觉就是要把要处理的问题在各个层面细化,一层一层的分成树状模块
方便梳理逻辑。有规律可循。
个人理解:把要完成的功能分成,每层之间不要僭越。
4.switch
就是说在编程过程中尽量避免swich,优化代码
5.使用描述性的名称
不要害怕使用长名称,代码简洁的标准不是看起来精简,而是理解起来精简。
6.函数的参数
参数要越少越好,尽量避免多参数,
“标识参数丑陋不堪,向函数传入布尔值简直就是骇人听闻的做法”
个人感觉基本概念就是尽量减少参数,而且使用有意义的参数,合并有共同意义的参数。
7.无副作用
就是说函数只做自己承诺的一件事,不要进行一些其他操作(会影响安全性)
避免使用输出参数,就是说函数本身这个层级不要对上一层级的数据进行操作。
8.分隔指令与询问
函数要么做什么事,要么回答什么事。
函数应该修改某对象的状态或者返回该对象的相关信息。
9.使用异常代替返回错误码
现在都这么做。
10.别重复自己
能提共通的就提共通。
11.结构化编程
主要是针对大函数来说,每一块都有单一入口单一出口。
12.如何写出这样的代码
不是说必须一开始就按照规则写,
可以先写一出来,然后仔细打磨。