您好,欢迎访问三七文档
代码走查检查表评审日期:年月日评审对象作者评审人评审工作量序号检查项评审意见走查前准备1得到一份解释代码的最新的设计文档,作为代码走查的参考2代码都已提交,版本统一程序结构组织1所有代码的结构清晰,具有良好的结构外观和整齐2所有的模块(函数和外部接口)定义清晰,模块分解清楚3所有的功能需求都明显的覆盖4整个代码体系结构组合合理,分层清晰,代码之间功能划分明确5所有的接口模块化,尽量减少接口之间的耦合度,修改时尽量不影响其他代码模块6代码体系构架对空间和速度都已经进行考虑7数据库操作、IO操作等是否正确关闭资源。并且必须在try-catch-finally的finally中关闭。8一个业务如果进行多次数据库更新、添加、删除是否正确添加事务。9进行逻辑与、逻辑或判断时是否使用短路与、短路或。10多处使用相同代码时,应定义唯一方法或变量以供使用。11对象是否使用工厂获取。12导入类时,如果仅使用包中的几个类,应导入具体类,而不是导入整个包。13数组声明的时候使用int[]index,而不要使用intindex[]。14代码实现的逻辑是否与详细设计描述的逻辑一致15检查类中是否有无效的代码或者是无用的代码。16不要使用System.out.print()以及System.err输出,需要进行日志处理17所有的文件名符合文件命名规范,见名知意18文件和模块分组清晰19较长的语句、表达式或参数(80字符)要分成多行书写,长表达式要在低优先级操作符处划分新行,操作符放在新行之首,划分出的新行要进行适当的缩进,使排版整齐,语句可读20每个程序文件都小于2000行代码组织1数据库查询语句不要出现select*2对需要处理的字符串定义为StringBuffer,常量定义成静态的。3所有的变量名都小于32字符4有返回值的方法是否正确返回。Return语句应定义在方法结尾处。5代码排版是否规范。6所有的行每行最多只有一句代码或一个表达式7复杂的表达式具备可读性,添加注释说明,表达式结构清晰8续行缩进9括号在合适的位置10每个顺序的小块用空行隔开11注释和代码对齐或接续在代码之后12JSP必须不能有basepath。13JSP引用js全部要有path14JSP用的标签库是否都正确引用。15JSP写的js方法必须要有注释。代码是否可读。16代码的逻辑是否有问题。17JSP页面尽量不要写过多的隐藏域。18JSP页面要注意排版、必要的注释、尽量减少使用alert(),JS和CSS除非必要就放到外部的单独文件中,在JSP中引用。19实例变量是否使用private修饰并定义getter、setter方法。20连接数据库的方法必须调用公用的方法。21异常要统一处理,异常处理方法是否符合项目组的约定22在Action中不要过多的逻辑处理代码23不要出现魔鬼数字24检查可能出现空指针异常的地方,例如一个对象可能为空,却调用它的方法或属性。25显示的文本无拼写和语法错误26所有的表达式使用了正确的操作符函数组织1所有的函数名都小于64个字符2函数高内聚尽量只做一件事情,并做好3函数和其他代码松耦合4所有的参数都被使用5如果一个函数有返回值,在所有的出口都有返回值6函数使用了最少数目的return语句7函数的参数个数小于7个8使用的算法说明清楚9函数检查了输入数据的合法性10函数异常处理清楚11函数设计尽量考虑将来的变化12调试信息存在于代码中并容易激活13递归定义了出口14递归局限于一个函数15对接口的调用必须要有判断传入的参数不能为空和传入的参数正确。数据类型与变量1数据类型存在数据类型解释2代码避免了重新定义预先定义的数据类型3每一个变量都初始化了4所有的变量都有最小的活动范围5所有的全局变量都描述清楚,如全局变量的作用6所有的变量都用到了条件判断1If/else使用正确2判断的次数降到最小3Boolean表达式表示清楚4最常用的情况最先判断,所有的情况都考虑5判断体足够短,以使得一次可以看清楚,不要有臃肿的逻辑判断。6嵌套层次小于3次7判断条件使用引用时,应先判断其是否为null。循环1不要出现三层以上的for循环。如有必要必须写清楚注释2循环体不为空,循环体能够一次看清楚3循环之前做好初始化代码4当有明确的多次循环操作,使用For循环5当有不明确的多次循环操作,while循环被使用6代码中不存在无穷次循环7循环的头部进行循环控制8循环体内的循环变量起到指示作用。9所有的循环边界是否正确;10循环终止的条件清晰11循环条件、判断条件的边界值,数组、集合下标是否越界。注释1类、方法、判断条件、循环、主要变量是否添加注释。2类名、方法名、变量名的命名是否规范。3有返回值的方法是否正确返回。Return语句应定义在方法结尾处。4源代码能够自我解释,每个人看到代码就能很快理解5解释不过于简单,解释说明代码功能,准确描述代码意义6所有的假设和限制进行注解7长的控制体结束,进行注解8对if和for、while等要进行必要的注释,并且方法体都要用{}包起来9代码的注释不能过于简单,要清晰明了。10缺陷修改阶段,提交代码的时候必须写清楚修改的功能点和为什么要修改。总括1无用的代码、注解已经删除2除非必要,不要在循环体内定义对象。“其他注意项1尽量减少同名的类(如java.sql.Date,java.util.Date)2不要在循环中反复定义创建变量for(){Stringstr=(newString)v.next();}3可能重复执行的SQl语句尽量使用preparedStatment4浮点型要精确比较时不要使用==,而如下进行Math.abs(x-0.0)Double.MIN.value*25在sql中注意敏感的单词要回避使用DB2中idflagyearmonthnamestateOracle中numberSybase中count6代码与操作系统无关,不需要任何假设条件7所有的数组访问在它们的边界内8类型转换明确指明文件修订记录变更版本修订日期原因与修改情况描述位置(页/段落/章节号修订人审核人1.02012-5-22新增all孟洋涛、郑海焘郑博1.12012-5-28根据各项目组评审出问题进行修改all孟洋涛郑博
本文标题:代码走查检查表
链接地址:https://www.777doc.com/doc-5587063 .html