欢迎来到天天文库
浏览记录
ID:56737758
大小:62.00 KB
页数:12页
时间:2020-07-06
《源代码编写规范.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、源代码编写规范版本<1.0>1简介31.1目的31.2范围32代码格式规范33代码注释规范44命名规范85异常处理规范96其他规范101简介1.1目的本文用于定义本公司程序编码规范。本文的目的在于规范和指导软件编程活动,作为考核标准。1.2范围本文仅用于指导软件编程工作,同时作为其他分析和设计工作的参考资料。本文的预期读者是:软件工程师/设计员、程序员。本公司各项目可以采用不同的编程语言,并参照本规范和各语言的习惯定义各自的编程规范,但是必须经过评审通过。编程规范一旦通过评审,任何人在编程活动中都必须遵循。2代码格式规范【规范1】单行代码不得超过120字符。【规范2
2、】每行代码最多包含一个独立的语句。【规范3】代码缩进两个空格。说明:两个空格已经足够清晰了,缩进量过大会导致单行代码很长,反而影响阅读。【规范4】不要使用TAB缩进代替空格缩进。【规范5】如果单行代码过长,则应该遵循以下规则断行:w在逗号的后面。w在操作符的前面。w断行的起始位置应该对其原行表达式的起始位置,如果无法满足,则缩进2个空格。【规范6】每一个变量的声明独占一行。【规范7】将变量的声明置于代码块的开始位置。【规范8】在java中for、while、do-while循环,if、elseif、else、switch-case分支,try-catch-final
3、ly块即使仅包含一个语句,也要用{}包含。其他语言参照执行。【规范9】空行的位置:w在逻辑代码段之间。wfor、while、do-while循环,if、elseif、else、switch-case分支,try-catch-finally块的前面。w在两个类或接口的定义之间。w在两个方法/函数/过程之间。w方法/函数/过程内部变量定义行和第一个非变量定义行之间。w包含(C++)/引入(Java)完毕之后。【规范10】空格的位置:w在一个关键字和做括号“(”之间。注意:不要在方法名和左括号之间加空格。w在参数列表的每个逗号“,”之后。w一元操作符前后。注意:二元操作符
4、前后都不加空格。例如:inta=10;a=a+1;a++;wfor语句的每个表达式之间。例如:for(inti=0;i<20;i++)…w类型转换语句之后。例如:Strings=(String)c;【建议】空行、空格也是代码。空行是一个逻辑段起止的标志,它和编程者的思路是一致的。另外,适当的使用空行和空格可以使你的代码更加清晰。1代码注释规范【规范1】代码注释的量应该不少于总代码行数的1/3。说明:只有足够的注释才能充分的说明你的代码,没有哪个规范可以规定注释量的上限,但是一般来说1/3应该是下限。如果你的代码包括注释、空行共90行,那么注释应该不少于30行。【规范
5、2】在维护代码的同时,维护你的注释。说明:我们通常在编写代码的同时都会对代码进行注释,但是往往在维护代码的时候忘记同时维护注释。所以很多注释在代码反复修改之后,失去了说明代码的作用,这样的注释还不如不写。【规范3】注释不要重复你的代码。例如:Stringstr;//声明一个String对象:str上面的代码看上去没有问题,但是注释却是没有用的――只是对代码的简单重复。要记住,注释是用来说明代码的,而不是重复代码的。【建议】文件注释。文件注释用于说明代码文件的一些附加信息,它位于源代码文件的顶部。文件注释最重要的作用是记录代码维护历史。例如:/**文件名:Demo.j
6、ava*作者:SamLee*完成日期:2004/02/02*维护人员:SamLee*维护日期:2004/02/02*维护原因:修改了对于图的深度遍历的算法*当前版本:1.0*前继版本:0.9beta*/【规范4】为每一个类编写类注释。类的注释位于类声明的前面,使用/**/进行注释(对于java,是/***/)。类的注释应该说明一下几点:1)完成了哪些工作,即这个类是作什么的。2)使用的方法和注意事项,如果比较难以表达,那么可以写一些示例代码。3)作者列表4)当前版本和完成时间5)参考类,即这个类与哪些类相关。注意:类注释不要写类的实现方法,例如:“Matrix类采用
7、主选消元法实现矩阵的求逆运算,具体算法是:…”,这样的注释往往会限制类的扩展,并且加重了类的维护的工作量。我们来看一个好的类注释:/***TheLongclasswrapsavalueoftheprimitivetype*longinanobject.AnobjectoftypeLong*containsasinglefieldwhosetypeislong.*以上是类的作用*
Long
long
**Inaddition,thisclassprovidesseveralme
此文档下载收益归作者所有