个人试翻

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

posted on 2012-11-02 17:23  feichexia  阅读(533)  评论(0编辑  收藏  举报