代码大全2已经读了将近一半了,收货颇丰,下面是这些天来的阅读笔记
第十一章:变量名的力量
1、代码的阅读次数远远大于编写的次数,为了可读性,确保所取的名字更侧重于阅读而不是编写方便。
2、命名时要足够具体,不要用模糊或者太通用能用于各种目的的名字,名字需要能表达变量所代表的含义,需要让阅读者无需苦苦思索。
3、命名规则应该能区分不同类型的数据,最好能够区分局部数据、类数据、全局数据,还应当可以区分类型名、具名常量、枚举类型和变量名等,具体命名类型的建议参考代码大全。
4、无论哪种类型的项目,都应该采用某种命名规则。所采用的规则的种类取决于程序的规模,以及项目成员的人数。
5、慎用缩写,现代编程语言很少使用缩写,如果真的要使用,最好维护一个项目字典或者标准前缀帮助理解,并且缩写英国有自己的规则,具体细节可参考代码大全。
第十四章:组织直线型代码
1、组织直线型代码的原则主要是按照依赖关系来排列。
2、可以用比较好的子程序名、参数列表、注释,以及使用不同的变量让依赖关系看起来更明显。
3、如果代码之间没有顺序依赖关系,则尽可能让相关的语句更接近。
第十九章:一般控制问题
1、布尔表达式(判断的条件)尽量可读,有助于提升代码的质量。
2、深层次的嵌套使得代码可读性降低,很少有人能理解超过3层的if嵌套,尽量避免使用超过3到4层的嵌套,可采用如下方法减少嵌套层次:
①重复判断一部分条件;
②转换成if-then-else;
③转换成case语句;
④把深层嵌套代码提取成单独的子程序;
⑤使用对象和多态。
3、衡量代码复杂度的方法,可以采用McCabe方法。