从这一章开始学习语句(statement)级别的一些方法,注意事项。
这一章的内容相对来说很简单,以至于很少有书会专门提到这些。然而归纳总结一下还是能有所提高。
组织顺序排列的代码,核心问题就是一个,如何处理好各行语句之间的依赖关系。
如果依赖关系存在,必须要按某个顺序来组织语句,就要想办法让这种依赖关系表现得很明显,比如调整顺序,用合适的函数名,用合适的参数名等等。如果还觉得不够明显,就要加注释,解释为什么要用这个顺序。如果代码还很关键,那么可以加上一些断言或者错误处理以防止语句顺序搞错引起的bug。
如果不存在依赖关系,那么就更好处理了,让代码读起来从上到下,不要跳来跳去;同时把相关的语句放到一起,比如都是处理同一个对象的语句都放在一起,这样方便阅读,也结构清晰,更不容易出错。
这一章就这样了。附上checklist:
Checklist: Organizing Straight Line Code
- Does the code make dependencies among statements obvious?
- Do the names of routines make dependencies obvious?
- Do parameters to routines make dependencies obvious?
- Do comments describe any dependencies that would otherwise be unclear?
- Have housekeeping variables been used to check for sequential dependencies in critical sections of code?
- Does the code read from top to bottom?
- Are related statements grouped together?
- Have relatively independent groups of statements been moved into their own routines?