双人项目代码规范
经过本次软件工程导论课的学习,让我第一次全面认识代码编写的各项问题,尤其是关于代码编写规范方面,以前在编写代码时都是经过系统的学习,按照书上或者老师所讲的代码进行模仿式编写,也根本不注意其规范问题,可以说以前编写代码时完全取决于自己的习惯,只有少数是知道其为规范要求,比如注释方面,自己以前编写代码也进行注释标注,但有时候注释位置根本不正确不符合代码规范,并且对注释理解·错误,尤其是喜欢注释自己是怎么做这个代码的,这个行为是代码规范中绝对不允许的,所以经过这次软件工程课程的学习,并且在观看《java开发手册》v1.5.0华山版和华为编码规范(c语言版)之后,在下一步双人项目中和以后的编写代码过程中,对张怀志和我的代码编写做了如下的简易规范:
第一,在代码缩进编排方面要注意,缩进的空格为四个空格,这个距离的可读性是最好的,且最好不要使用tap健,因为Tap键在不同情况下会显示不同的长度,随机性太大,严重干扰了阅读体验。尤其是在c语言编写过程中,函数或过程的开始、结构的定义及循环、判断等语句中的代码都要采用缩进风格,case语句下的情况处理语句也要遵从语句缩进要求。
第二,代码行宽也必须有规范,对于现在编写代码来说,行规一般在限制在100字符以内,不要太过于长。较长的语句(>100字符)要分成多行书写,长表达式要根据低优先级操作符进行划分新行,操作符应放在新行之首,划分出的新行也要进行适当的缩进,使排版整齐,语句可读。
第三,在代码编写过程中,需要注意括号的添加,尤其是在复杂的条件表达式中,应注意添加括号用来清楚的表示逻辑优先级。
第四,对于代码的断行和空白的{ }行也要有规范,程序块的分界符(如C/C++语言的大括号‘{’和‘}’)应各独占一行并且位于同一列,同时与引用它们的语句左对齐,并且if、for、do、while、switch、case语句中的程序也应该按照以上规范进行编写。
第五,对于代码分行也应有相关规范,不允许把多个短语句写在同一行中,即一行只能写一个短语句,严格点来说,就是不能把多个变量定义在一行上。
第六,在进行代码命名中也要有想应的规范,命名要清晰、明了,有明确含义,不要涉及到类型或其他语法方面的描述,整个代码编写过程中,命名风格应该一致,不能随意变化。除非必要,不要用数字或较奇怪的字符来定义标识符。在Java编写过程中也有相关特殊的命名规范,比如抽象类命名使用 Abstract 或 Base 开头;异常类命名使用 Exception 结尾;测试类命名以它要测试的类的名称开始,以 Test 结尾;相关代码命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。
第七,下划线也有相关的规范使用,下滑线主要作用是用于分隔变量名字中的作用域标注和变量的语义,根据规定下滑线一般不用在除上述之外的其他地方。
第八,编写代码过程中,应注意大小写的使用,规范中有以下两个大小写形式,Pascal形式表示所有单词的第一个字母都要大写,Camel形式表示第一个单词全部小写,随后单词随Pascal形式。这两种形式有自己的特定使用场合,比如所有的类型,类,函数名都有Pascal形式表示,所有变量都有Camel形式,函数则用动词或动宾组合词来表示。
第九,对于注释的相关规范,注释是用来解释程序做什么,为什么这么做,而不是去表示程序是怎么工作的,并且一般情况下,源程序有效注释量必须在20%以上,在c语言中,函数头部应进行注释,用来表示函数的目的/功能、输入参数、输出参数、返回值、调用关系(函数、表)等,要形成边写代码边注释习惯,修改代码同时修改相应的注释,以保证注释与代码的一致性。不再有用的注释要删除,这样可以保证注释的全面性,严重注意避免在注释中使用缩写,特别是非常用缩写。在Java语言中,类、类属性、类方法的注释必须使用 Javadoc 规范,使用/**内容*/格式,不得使用// xxx 方式,并且在Java中所有抽象方法必须用Javadoc规范,还必须指出该方法做什么事情,实现什么功能,注释时使用//进行注释,并且所有的类都应注释创建者和创建日期,而且所有的枚举类型都要有注释,以表明每个数据项的用途。