编程风格要素

一、代码力争清晰,不要自做聪明
二、清晰直接地表达你的意思
三、尽量使用库函数
四、避免过多临时变量
五、代码尽可能清晰,不要牺牲可读性换取“代码运行效率”
六、让机器干脏活(我的理解为尽可能自动化)
七、为重复使用的表达式提取共用函数
八、使用括号避免二义性
九、使用不容易混淆的变量名
十、避免没必要要的分支
十一、若是一个逻辑分支难以理解,尝试转换它
十二、选择合适的数据表示方案使得程序简单
1三、先写容易读懂的伪代码;而后将它翻译成你喜欢的任何编程语言
1四、模块化:使用过程(procedures)和函数
1五、完全杜绝goto的使用,以加强代码可读性
1六、不要对糟糕的代码修修补补,重写之
1七、大块程序的编写和测试都宜化整为零,逐步推动
1八、Use recursive procedures for recursively-defined data structures
1九、验证输入的有效性
20、确保输入未超出程序容许的界限
2一、用eof标记终止输入,而不是经过计数方式
2二、识别非法输入;若是可能的话从非法输入中恢复
2三、Make input easy to prepare and output self-explanatory
2四、使用同一的输入格式
2五、尽可能让输入容易校对
2六、使用自我说明的输入,容许默认值。输出也如此。
2七、确保变量使用前已经被初始化
2八、不要停在一个bug上(只见树木,不见森林?)
2九、使用方便调试的编译器
30、提防off-by-one错误
3一、Take care to branch the right way on equality
3二、Be careful if a loop exits to the same place from the middle and the bottom
3三、Make sure your code does "nothing" gracefully
3四、用边界值测试程序
3五、手工验证一些状况
3六、10.0乘以0.1几乎从不等于1.0
3七、7/8等于0,而7.0/8.0不等于0
3八、不要对浮点数进行相等比较
3九、先让程序正确,而后才想办法让程序更快
40、先让程序fail-safe(故障可恢复),而后才想办法让程序更快
4一、先让程序代码清晰,再考虑让程序变快
4二、不要用可读性换取小小的“运行效率”提高
4三、让优化器作简单的优化
4四、Don't strain to re-use code; reorganize instead.
4五、Make sure special cases are truely special
4六、Keep it simple to make it faster
4七、Don't diddle code to make it faster, find a better algorithm
4八、Instrument your programs, measure before making "efficiency" changes
4九、注释和代码必须一致
50、Don't just echo the code with comments - make every comment count
5一、不要为糟糕的代码添加注释做为弥补措施,重写之
5二、使用有意义的变量名
5三、Use statement labels that means something
5四、格式化代码以加强可读性
5五、用文档记录你的数据布局(data layouts)
5六、不要过分注释编程

相关文章
相关标签/搜索