关键思想: 把条件、循环以及其他对控制流的改变做得越“自然”越好。运用一种方式使读者不用停下来重读你的代码
if/else
语句块的顺序?:
条件表达式(又名“三目运算符”)关键思想: 相对于追求最小化代码行数,一个更好的度量方法是最小化人们理解它所需的时间。
建议: 默认情况下都用if/else。三目运算符
12博体育,?:
只有在最简单的情况下使用。
while循环相对更易读,因为你会先读到所有迭代的条件,12博体育,然后再读到其中的代码块
其中的continue语句会很让人迷惑
尽量使用向后goto,同事保证路径没有交叉
嵌套很深的代码很难以理解。
关键思想: 当你对代码做改动时,从全新的角度审视它,把它作为一个整体来看待。
关键思想: 把你的超长表达式拆分成更容易理解的小块。
拆分表达式最简单的方法就是引入一个额外的变量,让它来表示一个小一点的子表达式。
用一个短很多的名字来代替一大块代码,这个名字会更容易管理和思考。
德摩根定理: 对于一个布尔表达式,“分别取反,转换与/或”
关键思想: 要小心“智能”的小代码段——它们往往在以后会让别人读起来感到困惑
拆分巨大的语句
同样的技术也可以用来拆分大的语句。
如果一个变量符合下面条件,它就是一个没有价值的临时变量,应当删除:
将用于控制程序流的变量尽可能删除
关键思想: 让你的变量对尽量少的代码行可见。
这样有效地减少了读者同时需要考虑的变量个数
静态方法是让读者知道“这几行代码与那些变量无关”的好办法。
“永久固定”的变量更容易思考
关键思想: 操作一个变量的地方越多,越难确定它的当前值。