Board logo

标题: [转贴]推荐的代码风格 [打印本页]

作者: 网事如风    时间: 2005-3-10 12:11     标题: [转贴]推荐的代码风格

推荐的代码风格
1.     使用有描述意义的变量名。
2.     使用I, j, k, l, m作为循环计数变量。这起源于Fortran,自始自终这都是事实上的工业标准。
3.     在闭合括号处为所有的声明和方法注释。这样在尝试找到与此配对的上一个初始括号时更容易做决定,尤其在声明很长时。
4.     考虑将if后面或循环定义体的初始括号放在一个单独的行上。这真的有助于您找到与其对应的闭合括号。
5.     使用适当的组合运算符 (+=, *=, 等等)。对自增(自减)变量使用++ 和 -–运算符。正确使用这些运算符会使您的代码更可读和更一致。这也减少了输入的字符数量。组合运算符也会帮助编译器生成更快的代码。举例来说,i++产生的asm(汇编)代码是inc ,而i=i+1将会产生如下的asm(汇编)代码mov eax, inc eax mov ,eax。
6.     注解代码时,要明智些!如果一段代码的逻辑关系很复杂,注解将有助于别人理解代码的意图。但如果逻辑关系直线向前,避免加上并非必须的注解。要象维护您的代码一样维护您的注解!
7.     命名变量时,使用有描述意义的大写。简单变量(例如,int, long, String)应该以小写字符开始。复杂变量(例如,对象、结构、数组)应该以大写开始。变量名称中包含的所有单词都应该大写开头。这会让读(写)代码的人对所访问的数据类型有一个清晰的第一印象。
8.     避免在变量名中使用下划线。绝大多数的编译器中,它都有特殊的意义。
9.     尽可能(而不是疯狂的)将代码模块化。合理的话,将代码放入函数中去。这允许更好的代码重用性和可读性。
10. 使用正确的循环。如果代码最少要执行一次,使用do-while循环,否则使用while-do循环。如果确切的循环执行次数已知,使用for循环。
11. 在事件发生的数量超过两种时,只要可能就使用switch声明。同时,无论何时只要可能就包含一个switch default(缺省开关),这样总会有一个选项被触发。Switch声明很容易除错,而且比组合的多重if声明执行速度更快。
12. 在您代码中的逻辑步骤之间加上一个空行(例如,定义变量、循环、等等)。
13. 声明变量的位置非常重要。变量应该声明的位置几乎没有随意性。当变量用于整个(类)对象或者必须在对象外可见的时候,变量应放在头文件中。临时变量如果不需要在if声明或循环体外被访问的话,就应在它们内部声明。不正确的放置变量声明会导致执行速度减慢、错误、或者引起误导的代码。
14. 初始化所有的变量。
15. 如果您有非空返回(带返回值)的函数,确保所有的退出点都使用了return。对编译器产生的警告"function should return a value"(函数应该返回一个值)要引起足够重视。这是严重警告并且可能导致您的软件发生随机错误。
16. 在两个不同类型的变量间赋值时,应对变量进行强制转换计算来避免编译器的警告(例如:int x; float y; … y=float x;)。这么做可以防止"Conversion may loose significant digits"的警告。作为一个程序员您的目标应该尽可能的减少警告的数量。而强制类型转换将消除其中的大多数。
17. 永远在删除后将指针设为NULL。
18. 尽量仔细的调查以避免“闭门造旧车”。经过证明的函数与程序使用时优先于新写的代码。这会让您有更多的时间去写真实的逻辑代码并且非常有助于维护。尽管尽管动态链表的书写非常有趣,它早已被完成了!
19. 正确的拼写很重要。如果拼写有错的话,将来的搜索会很困难。
20. 永远不要使用两个只有大小写不同的变量名字。
21. 在您创建代码时就输入注解,而不是以后。在您修改代码的时候,保持对注解的维护。
22. 如果您在调试或除错时注解(rem)了一段代码的话,确保您最后将被注解的代码删除。
23. 最后最重要的是…保持风格的一致。
作者: sabalaji    时间: 2005-3-10 13:15

什么年代了,还写代码,我们这早就不用这一套了,想要写什么东西,只要告诉手下的程序员,他们会实现的,呵呵,根本不需要懂什么语法
作者: 网事如风    时间: 2005-3-10 18:32

唉,你们比较高级啊!
想要什么软件,喊那么一嗓子,就端上来了,还真TMD好使!
然后出BUG了,然后你就喊:臭虫给我滚!
然后BUG闻到你小子今个还没刷牙,那个臭啊,立马就溜了^-^
作者: Nothing    时间: 2005-3-10 21:58

哈哈
作者: bee    时间: 2006-11-11 00:36

论坛没什么人气呀~?




欢迎光临 编程开发论坛 (http://bbs.lihuasoft.net/) Powered by Discuz! 6.0.0