[ PROMPT_NODE_24536 ]
code-review-checklist
[ SKILL_DOCUMENTATION ]
# 代码审查清单
## 概述
提供一套系统化的清单,用于进行彻底的代码审查。此技能可帮助审查者确保代码质量、捕获 Bug、识别安全问题并保持代码库的一致性。
## 何时使用此技能
- 审查合并请求 (Pull Request) 时
- 进行代码审计时
- 为团队建立代码审查标准时
- 培训新开发人员掌握代码审查实践时
- 希望确保审查无遗漏时
- 创建代码审查文档时
## 工作原理
### 第 1 步:理解上下文
在审查代码之前,我将帮助你理解:
- 这段代码解决了什么问题?
- 需求是什么?
- 修改了哪些文件,原因是什么?
- 是否有相关的问题或工单?
- 测试策略是什么?
### 第 2 步:审查功能
检查代码是否正常工作:
- 它是否解决了既定问题?
- 是否处理了边界情况?
- 错误处理是否得当?
- 是否存在逻辑错误?
- 是否符合需求?
### 第 3 步:审查代码质量
评估代码的可维护性:
- 代码是否易读且清晰?
- 命名是否具有描述性?
- 结构是否合理?
- 函数/方法是否职责单一?
- 是否存在不必要的复杂性?
### 第 4 步:审查安全性
检查安全问题:
- 输入是否经过验证?
- 敏感数据是否受到保护?
- 是否存在 SQL 注入风险?
- 身份验证/授权是否正确?
- 依赖项是否安全?
### 第 5 步:审查性能
查找性能问题:
- 是否存在不必要的循环?
- 数据库访问是否优化?
- 是否存在内存泄漏?
- 缓存使用是否得当?
- 是否存在 N+1 查询问题?
### 第 6 步:审查测试
验证测试覆盖率:
- 新代码是否有测试?
- 测试是否覆盖了边界情况?
- 测试是否有意义?
- 所有测试是否通过?
- 测试覆盖率是否充足?
## 示例
### 示例 1:功能审查清单
markdown
## 功能审查
### 需求
- [ ] 代码解决了既定问题
- [ ] 满足所有验收标准
- [ ] 处理了边界情况
- [ ] 处理了错误情况
- [ ] 用户输入已验证
### 逻辑
- [ ] 无逻辑错误或 Bug
- [ ] 条件判断正确(无差一错误)
- [ ] 循环终止正确
- [ ] 递归具有正确的基准条件
- [ ] 状态管理正确
### 错误处理
- [ ] 错误被适当地捕获
- [ ] 错误信息清晰且有帮助
- [ ] 错误不会暴露