《JAVA代码审查检查表(共4页).doc》由会员分享,可在线阅读,更多相关《JAVA代码审查检查表(共4页).doc(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上JAVA软件代码审查表(CHECKLIST)序号总 则 条 款执行情况说明1 命名规则11.1 命名规则是否与所采用的规范保持一致是 否 免 21.2 是否遵循了最小长度最多信息原则是 否 免 31.3 has/can/is前缀的函数是否返回布尔型是 否 免 2 注 释42.1注释是否较清晰且必要是 否 免 52.2复杂的分支流程是否已经被注释是 否 免 62.3距离较远的是否已经被注释是 否 免 72.4非通用变量是否全部被注释是 否 免 82.5函数是否已经有文档注释是 否 免 92.6特殊用法是否被注释是 否 免 3 声明 空白 缩进103.1每行是否只声明了一
2、个变量(特别是那些可能出错的类型)是 否 免 113.2变量是否已经在定义的同时初始化是 否 免 123.3类属性是否都执行了初始化是 否 免 133.4代码段落是否被合适地以空行分隔是 否 免 143.5是否合理地使用了空格使程序更清晰是 否 免 153.6代码行长度是否在要求之内是 否 免 163.7折行是否恰当是 否 免 4 语句/功能划分/规模174.1包含复合语句的是否成对出现并符合规范是 否 免 184.2是否给单个的循环、条件语句也加了是 否 免 194.3 if/if-else/if-else if-else/do-while/switch-case语句的格式是否符合规范是 否
3、 免 204.4单个变量是否只做单个用途是 否 免 214.5单行是否只有单个功能(不要使用;进行多行合并)是 否 免 224.6单个函数是否执行了单个功能并与其命名相符是 否 免 234.7操作符+和-操作符的应用是否复合规范是 否 免 244.8单个函数不超过规定行数是 否 免 254.9缩进层数是否不超过规定是 否 免 5 可靠性(总则/变量和语句)265.1是否已经消除了所有警告是 否 免 275.2常数变量是否声明为final是 否 免 285.3对象使用前是否进行了检查是 否 免 295.4局部对象变量使用后是否被复位为NULL是 否 免 305.5对数组的访问是否是安全的(合法的
4、index取值为0, MAX_SIZE-1)是 否 免 315.6是否确认没有同名变量局部重复定义问题是 否 免 325.7程序中是否只使用了简单的表达式是 否 免 335.8是否已经用()使操作符优先级明确化是 否 免 345.9所有判断是否都使用了(常量=变量)的形式是 否 免 355.10是否消除了流程悬挂是 否 免 365.11是否每个if-else if-else语句都有最后一个else以确保处理了全集是 否 免 375.12是否每个switch-case语句都有最后一个default以确保处理了全集是 否 免 385.13 for循环是否都使用了包含下限不包含上限的形式(k=0;
5、kMAX)是 否 免 395.14 XML标记书写是否完整,字符串的拼写是否正确是 否 免 405.15对于流操作代码的异常捕获是否有finally操作以关闭流对象是 否 免 415.16退出代码段时是否对临时对象做了释放处理是 否 免 425.17对浮点数值的相等判断是否是恰当的(严禁使用=直接判断)是 否 免 6 可靠性(函数)436.1入口对象是否都被进行了判断不为空是 否 免 446.2入口数据的合法范围是否都被进行了判断(尤其是数组)是 否 免 456.3是否对有异常抛出的方法都执行了try.catch保护是 否 免 466.4是否函数的所有分支都有返回值是 否 免 476.5 in
6、t的返回值是否合理(负值为失败,非负值成功)是 否 免 486.6对于反复进行了int返回值判断是否定义了函数来处理是 否 免 496.7关键代码是否做了捕获异常处理是 否 免 506.8是否确保函数返回CORBA对象的任何一个属性都不能为null是 否 免 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) return true; else return false;)是 否 免 617.5是否把方法中的重复代码抽象成私有函数是 否 免 专心-专注-专业