《JAVA代码审查检查表.docx》由会员分享,可在线阅读,更多相关《JAVA代码审查检查表.docx(8页珍藏版)》请在第壹文秘上搜索。
1、JAVA软件代码审查表(CHECKLIST)序J-总则条款执行状况说明1命名规则11.1命名规则是否与所采纳的规范保持一样是否免21.2是否遵循了最小长度最多信息原则是否免31.3has/can/is前缀的函数是否返回布尔型是否免2注释42.1注释是否较清楚且必要是否免52.2困难的分支流程是否已经被注释是否免62.3距离较远的是否已经被注释是否免72.4非通用变量是否全部被注释是否免序,总则条款执行状况说明82.5函数是否已经有文档注释是否免92.6特殊用法是否被注释是否免3声明空白缩进103.1每行是否只声明白一个变量(特殊是那些可能出错的类型)是否免113.2变量是否已经在定义的同时初始
2、化是否免123.3类属性是否都执行了初始化是否免133.4代码段落是否被合适地以空行分隔是否免143.5是否合理地运用了空格使程序更清楚是否免153.6代码行长度是否在要求之内是否免163.7折行是否恰当是否免序,J总则条款执行状况说明4语句/功能划分/规模1741包含复合语句的是否成对出现并符合规范是否免184.2是否给单个的循环、条件语句也加了是否免194.3if/if-else/if-elseif-e1sedo-whi1e/switch-case语句的格式是否符合规范是否免204.4单个变量是否只做单个用途是否免214.5单行是否只有单个功能(不要运用;进行多行合并)是否免224.6单个
3、函数是否执行了单个功能并与其命名相符是否免234.7操作符+和一操作符的应用是否复合规范是否免244.8单个函数不超过规定行数是否免序,总则条款执行状况说明254.9缩进层数是否不超过规定是否免5牢靠性(总则/变量和语句)265.1是否已经消退了全部警告是否免275.2常数变量是否声明为final是否免285.3对象运用前是否进行了检查是否免295.4局部对象变量运用后是否被复位为NULL是否免305.5对数组的访问是否是平安的(合法的index取值为0,MAX_SIZE-1)是否免315.6是否确认没有同名变量局部重复定义问题是否免325.7程序中是否只运用了简洁的表达式是否免335.8是否
4、已经用O使操作符优先级明确化是否免序,总则条款执行状况说明345.9全部推断是否都运用了(常量二变量)的形式是否免355.10是否消退了流程悬挂是否免365.11是否每个if-elseif-else语句都有最终一个else以确保处理了全集是否免375.12是否每个switch-case语句都有最终一个default以确保处理了全集是否免385.13for循环是否都运用了包含下限不包含上限的形式(k=0;kMAX)是否免395.14XML标记书写是否完整,字符串的拼法是否正确是否免405.15对于流操作代码的异样捕获是否有finally操作以关闭流对象是否免415.16退出代码段时是否对临时对象
5、做了释放处理是否免序,总则条款执行状况说明425.17对浮点数值的相等推断是否是恰当的(严禁运用=干脆推断)是否免6牢靠性(函数)436.1人口对象是否都被进行了推断不为空是否免446.2入口数据的合法范围是否都被进行了推断(尤其是数组)是否免456.3是否对有异样抛出的方法都执行了try.catch爱护是否免466.4是否函数的全部分支都有返回值是否免476.5int的返回值是否合理(负值为失败,非负值胜利)是否免486.6对于反复进行了int返回值推断是否定义了函数来处理是否免496.7关键代码是否做了捕获异样处理是否免506.8是否确保函数返回CORBA对象的任何一个属性都不能为null
6、是否免序,J总则条款执行状况说明516.9是否对方法返回值对象做了null检查,该返回值定义时是否被初始化是否免526.10是否对同步对象的遍历访问做了代码同步是否免536.11是否确认在对Map对象运用迭代遍历过程中没有做增减元素操作是否免546.12线程处理函数循环内部是否有异样捕获处理,防止线程抛出异样而退出是否免556.13原子操作代码异样中断,运用的相关外部变量是否复原从前状态是否免566.14函数对错误的处理是恰当的是否免7可维护性577.1实现代码中是否消退了干脆常量(用于计数起点的简洁常数例外)是否免587.2是否消退了导致结构模糊的连续赋值(如a=(b=d+c)是否免序,总则条款执行状况说明597.3是否每个return前都要有日志记录是否免607.4是否有冗余推断语句(如:if(b)returntrue;elsereturnfalse;)是否免617.5是否把方法中的重复代码抽象成私有函数是否免