代码阅读方法与实践02
17.高效的算法和特殊的优化确实有可能使得代码更为复杂, 从而更难理解, 但这并不意味着使代码更为紧凑和不易读会提高它的效率.
18.创造性的代码布局可以用来提高代码的易读性.
19.我们可以使用空格|临时变量和括号提高表达式的易读性.
20.在阅读您所控制的代码时, 要养成添加注释的习惯.
21.我们可以用好的缩进以及对变量名称的明智选择, 提高编写欠佳的程序的易读性.
22.用diff程序分析程序的修订历史时, 如果这段历史跨越了整体重新缩排, 常常可以通过指定-w选项, 让diff忽略空白差异, 避免由于更改了缩进层次而引入的噪音.
21.do循环的循环体至少执行一次.
22.执行算术运算时, 当b=2n-1时, 可以将a&b理解为a%(b+1).
23.将a<<n理解为a*k, k=2n.
24.将a>>n理解为a/k, k=2n.
25.每次只分析一个控制结构, 将它的内容看作是一个黑盒.
26.将每个控制结构的控制表达式看作是它所包含代码的断言.
27.return, goto, break和continue语句, 还有异常, 都会影响结构化的执行流程. 由于这些语句一般都会终止或重新开始正在进行的循环,因此要单独推理它们的行为.
28.用复杂循环的变式和不变式, 对循环进行推理.
29.使用保持含义不变的变换重新安排代码, 简化代码的推理工作.