代码审查报告
xxxx公司
版本信息
文档标识:
当前版本:
当前状态:
草稿
发布日期:
发布
修改历史
日期
版本
作者
修改内容
评审号
变更控制号
评审对象
审查员
项目名称
审查日期
分类
重要性
检查项
备注
命名
重要
命名规则是否与所采用的规范保持一致?
成员变量,方法参数等需要使用首字母小写,
其余单词首字母大写的命名方式,
禁止使用下划线(_)数字等方式命名
不要出现局部变量,成员变量大写字母开头等问题
一般
是否遵循了最小长度最多信息原则?
各种命名尽可能短,表意准确,除2代替‘to’,
4代替‘for’外,不建议使用数字在命名中
重要
has/can/is前缀的函数是否返回布尔型?
成员变量,方法参数,局部变量等为布尔型时,
如果出现has/can/is开头,则将这些词去掉
重要
类名是否存在重名问题?
自己实现的类尽量不要和别人的类重名,
尽管不在同一个包下,特别是子类和父类重名的情况
注释
重要
注释是否较清晰且必要?
方法JAVADOC注释中需要说明各参数、返回值
及异常说明,参数说明需按照参数名称及用意对应标注
重要
复杂的分支流程是否已经被注释?
一般
距离较远的}是否已经被注释?
重要
函数是否已经有文档注释?(功能、输入、返回及其他可选)
文件,类(含接口,枚举等),成员变量,
方法前需要有JAVADOC的注释
一般
特殊用法是否被注释?
声明、空白、缩
进
一般
每行是否只声明了一个变量?(特别是那些可能出错的类型)
重要
变量是否已经在定义的同时初始化?
重要
类属性是否都执行了初始化?
一般
代码段落是否被合适地以空行分隔?
一般
是否合理地使用了空格使程序更清晰?
基本代码格式中的空格符不可缺少,
这些空格出现在?,:,+,-,*,/,=,==,>,<,>=,<=,!=,
及各种括号附近
提示
代码行长度是否在要求之内?
每行不得超过120个字符
重要
controller,service, dao 中不要声明有状态的变量。
此变量不能被修改。如果要进行修改,
必须通过锁进行控制。
一般
折行是否恰当?
一般
集合是否被定义为泛型类型?
定义集合时,建议定义其泛型类型,
减少类型转换和警告错误
语句/功能分布/规模
一般
包含复合语句的{}是否成对出现并符合规范?
重要
是否给单个的循环、条件语句也加了{}?
if,else,else if,while,for,case等
代码块必须用{}包围
一般
单个变量是否只做单个用途?
重要
单行是否只有单个功能?(不要使用;进行多行合并)
重要
单个函数是否执行了单个功能并与其命名相符?
一般
操作符++和— —操作符的应用是否符合规范?
规模
重要
单个函数不超过规定行数?
重要
缩进层数是否不超过规定?
可靠性(总则/变量和语句)
重要
是否已经消除了所有警告?
开发工具的警告
重要
常数变量是否声明为final?
重要
对象使用前是否进行了检查?
重要
成员变量,局部变量是否在使用前被赋值?
对象初始化为null的对象被调用前必须被重新赋值,
如果赋值语句在try块中,调用操作必须在try块中
一般
局部对象变量使用后是否被复位为NULL?
特别是 数组 集合 Map
重要
对数组的访问是否是安全的?(合法的index取值为[0, MA
代码审计报告3 来自淘豆网m.daumloan.com转载请标明出处.