这篇写给已经会用 AI 代码审查、希望再进一步的读者。理解原理是关键:AI 能快速通读改动,按清单逐项检查,把明显的问题先筛出来;人工评审者就可以把注意力放在设计和业务逻辑上。

AI 审查最擅长的是“清单型问题”:空值、边界、注入、资源释放,这些问题有固定模式,人在疲劳时容易漏看。它最不擅长的是“意图型问题”:这个设计是否合理、是否符合业务需求。明确这个分工,让 AI 处理前者,人专注后者,评审效率才会真正提高。

技巧 1:把团队的编码规范和常见问题清单给 AI

把团队的编码规范和常见问题清单给 AI,审查会更有针对性。建议先在一个小任务上试用,确认效果后再推广。

技巧 2:要求 AI 给出修改示例代码

要求 AI 给出修改示例代码,便于快速修复。建议先在一个小任务上试用,确认效果后再推广。

技巧 3:对安全敏感的改动

对安全敏感的改动,专门进行一轮安全审查。建议先在一个小任务上试用,确认效果后再推广。

技巧 4:让 AI 从“未来维护者”的角度评价可读性

让 AI 从“未来维护者”的角度评价可读性。适合在任务较复杂或要反复使用时采用。

技巧 5:把 AI 发现的高频问题整理成团队规范

把 AI 发现的高频问题整理成团队规范。这一条在团队协作中尤其有用。

一个进阶场景

举个虚构的例子:一个小团队只有两位开发,经常互相评审到很晚。他们约定提交前先让 AI 按清单自查,修完高、中级问题再提交人工评审。一个月后,人工评审中发现的低级问题明显减少,评审讨论更多集中在设计选择上。

如何减少误报? 提供项目规范和背景,并要求“只报告有把握的问题”。

高级模板示例

下面的模板综合了以上技巧,可以按科研人员等不同场景替换内容:

代码审查清单(请逐项检查并给出结论:通过/有问题/不适用):
□ 输入校验:外部输入是否都经过校验
□ 错误处理:异常是否被捕获并有明确的日志
□ 资源管理:连接、文件、锁是否被正确释放
□ 并发:是否存在竞态或重复执行风险
□ 安全:是否有注入、越权、敏感信息输出到日志
□ 测试:新增逻辑是否有对应测试
□ 兼容性:是否影响现有接口和数据
对每个“有问题”的项,给出代码位置和修改示例。

进阶使用时仍要避免

  • ✗ 把含密钥的代码发给外部工具。 ✓ 审查前移除敏感信息,遵守公司规定。
  • ✗ 全盘接受所有建议。 ✓ 逐条判断,尤其是风格类建议要符合团队规范。

可以组合的技能

  • AI 编程助手:AI 编程助手是集成在代码编辑器或开发环境中的 AI 功能,能补全代码、解释代码、根据注释生成函数、重构、写测试,部分工具还能在理解整个项目的基础上执行多文件修改。
  • AI 写单元测试:用 AI 写单元测试是把函数代码和需求说明交给 AI,让它分析输入输出和边界情况,生成测试用例和测试代码。

进阶之后

当 AI 代码审查已经用得很顺手,可以思考如何把它固化下来:写成模板、放进自定义助手,或者和自我批改结合成固定流程。进阶的终点不是写出更复杂的提示词,而是让好结果变得可重复。

相关阅读