对修改后的代码做 Code Review 时应检查哪些方面?
未标记
考查重点:需求行为与改动影响核查。按需求重走触发到结果路径,重点查边界、权限、事务和调用影响,再看维护与性能;用可复现条件支持发现,不只按风格列清单
本题目录
参考答案
本答案基于相关资料,由 AI 辅助编写,供学习与面试准备参考。如有疏漏,欢迎反馈指正。
核心回答
先确认修改是否实现需求、有没有破坏原有行为,再检查实现质量。可以按范围、行为链、关键风险、验证证据四步审查,最后看复杂度、性能、命名和文档;不能只按格式规范扫一遍。
先看范围与行为
对照需求检查修改了哪些文件、是否混入无关重构,沿一次实际请求查看参数、校验、处理、持久化与返回。再查受影响调用方和异常分支,确认接口语义、字段和状态转换仍兼容。
重点检查什么
- 业务正确性:计算、边界、空值和状态判断是否符合要求,失败是否被误报成功。
- 权限与数据边界:身份和资源归属是否验证,是否增加敏感信息暴露或绕过既有校验。
- 事务与并发:检查与写入之间是否有竞态,部分失败是否回滚,重复调用会不会重复产生副作用。
- 依赖与性能:新增循环或远程调用是否放大请求量,超时和资源释放是否完整,是否引入不必要依赖。
- 可维护性:实现是否过度抽象,命名与注释是否清楚,相关文档或配置是否需要同步。
用证据形成结论
检查测试是否覆盖本次新增和改变的行为,特别是错误路径与回归条件。必要时运行最小用例或查看实际页面;并发问题还要推演交错顺序,不能只凭一次运行正常就排除。
意见应落到位置、触发条件和可观察影响。例如“两个请求同时读取相同余额,再分别写回,可能覆盖一次扣款”,比“并发不安全”更便于修复。没有发现明确问题时,可以说明已检查的范围及尚未运行的验证,不为凑数量添加风格偏好。
对应教程
- ai-agents-from-zero:27-Skills技能与AI编程工具实践:其中代码审查Skill示例列出正确性、安全、维护与测试缺口;本文进一步解释实际变更怎样核对和验证。
参考资料
- 国内:阿里云:配置与使用代码评审 AI 助手:借鉴按团队路径与问题级别设置评审范围,先确定改动边界。
- 国内:阿里云:AI 编码工具应用效果评估实践指南:采用缺陷与有效测试分开检查的方式,审查新增和改变的行为是否得到验证。
- 国内:JavaGuide:单元测试详解:参考测试应验证业务行为而非仅执行代码的原则。
- 国内:华为云:实行代码白盒检视:采用白盒检视对逻辑、安全、职责与问题跟踪的要求。
- 国外:Google:What to look for in a code review:采用设计、功能、复杂度、测试和文档的检查维度。
- 国外:GitHub:Copilot code review:使用AI审查可辅助但需验证的边界,不把工具结论当最终正确性证明。


