-
Notifications
You must be signed in to change notification settings - Fork 3
代码评审模板
bettermorn edited this page Aug 3, 2024
·
2 revisions
- 建议时长 1.5-2小时
- 针对业务逻辑复杂的、有技术难度的、耗费资源多的、能力较弱的工程师所写代码。
- 评审前需做好准备
检查项目 | 结果 | 说明 |
---|---|---|
模块名 | ||
审查人员 | ||
版本 | 1.0 | |
日期 | YYYY-MM-DD | |
语言 | ||
作者 | ||
文件数 | 1 |
检查项目 | 结果 | 说明 |
---|---|---|
代码通过编译,没有任何错误 | 是 | |
代码通过编译,没有任何警告信息 | 是 | |
存在单元测试 | 否 | |
代码处于源代码控制之下 | 是 | |
使用检查工具对代码进行了检查 | 是 | |
工具名称 | P3C | |
结果 | CRITICAL(0) |
检查项目 | 结果 | 说明 |
---|---|---|
代码已完成(相对于规范来说) | 是 | |
选择的算法很好 | 不适合 | |
采用了恰当的设计模式 | 否 | |
任何缺失的功能都已在代码中清晰的标出 | 不适合 | |
代码的结构很好 | 是 | |
存在设计文档 | 是 | |
代码与这些文档相符 | 是 |
检查项目 | 结果 | 说明 |
---|---|---|
代码的布局很清晰 | 是 | |
代码遵循项目的风格准则 | 是 | |
存在良好(无歧义)的公共API | 是 | |
选择的名称都很好 | 是 |
检查项目 | 结果 | 说明 |
---|---|---|
数组访问得到了保护(C/C++) | 不适用 | |
数据类型选择正确 | 否 | |
所有输入都有效 | 是 | |
不存在特定编译器功能(C/C++) | 不适用 |
检查项目 | 结果 | 说明 |
---|---|---|
错误情况都得到了处理 | 是 | |
使用断言来验证逻辑 | 否 | |
代码是异常安全(exception safe)的 | 是 | |
错误将被传播,而不会被隐藏 | 是 | |
本地有日志文件 | 否 | |
没有任何资源被泄露 | 未知 | |
代码使用多线程 | 不适用 | |
它是线程安全的 | 不适用 | |
不会发生死锁 | 是 |
检查项目 | 结果 | 说明 |
---|---|---|
不存在冗余的代码 | 是 | |
不存在剪切粘贴式的编程 | 否 |
文件 | 行 | 问题 | 说明 |
---|---|---|---|
223 | if条件判断语句过长 | ||
1171 | switch语句可以优化 | ||
2502 | if条件判断语句过长 | ||
使用System.err输出,未用log |
检查项目 | 结果 | 说明 |
---|---|---|
代码不错 | 是 | |
重新编写并验证 | ||
重新编写并重新审查 |
检查项目 | 结果 | 说明 |
---|---|---|
审查 | ||
校验 |