Skip to content

Code Review 速查 ​

本文用于 PR 审查时快速核对。审查方法、评论规范与团队流程见 Code Review。

检查清单 ​

正确性 ​

  • [ ] 逻辑是否正确,边界条件是否处理
  • [ ] 空指针、数组越界等运行时异常
  • [ ] 并发安全(共享变量、竞态条件)
  • [ ] 事务边界是否正确
  • [ ] 异常处理是否保留必要的错误信息,是否将失败错误地忽略或当作成功

可读性 ​

  • [ ] 命名是否清晰(变量、方法、类)
  • [ ] 方法的分支、嵌套和状态转换是否使控制流难以理解
  • [ ] 注释是否必要且准确
  • [ ] 魔法数字是否提取为常量

设计 ​

  • [ ] 是否符合单一职责
  • [ ] 是否有重复代码
  • [ ] 依赖方向是否合理
  • [ ] 接口职责与使用方式是否清晰,是否暴露不必要的实现细节

安全 ​

  • [ ] SQL 注入风险
  • [ ] XSS 风险
  • [ ] 越权访问:是否存在水平或垂直越权(服务端资源级权限校验)
  • [ ] 不可信输入用于文件操作、网络请求或反序列化时,是否针对具体风险进行校验与约束(如限制文件路径范围、校验请求目标、限制反序列化类型)
  • [ ] 日志、错误响应、审计记录是否泄露令牌、凭据或个人数据
  • [ ] 密码、访问令牌、私钥等敏感凭据是否硬编码在代码或配置中

性能 ​

  • [ ] N+1 查询问题
  • [ ] 是否存在可合并的重复查询或无效查询
  • [ ] 集合、缓存等数据结构是否存在无界增长或长期保留无用数据
  • [ ] 数据库连接、流、文件句柄等需显式释放的资源是否可靠关闭
  • [ ] 缓存更新与失效策略是否正确,是否设置合理的容量或过期边界

测试与变更影响 ​

  • [ ] 测试是否覆盖关键业务路径与失败路径
  • [ ] 公共 API、消息格式或数据库 Schema 的变更是否兼容旧消费者和存量数据
  • [ ] 跨服务调用、重试与部分失败是否引入重复执行或状态不一致风险

Review 原则 ​

  • 对事不对人,讨论代码而非作者
  • 指出问题时说明风险和原因;有明确可行的修正方式时,给出建议或示例
  • 区分"必须改"和"建议改"
  • 及时处理待审 PR,避免评审长期无人响应

Released under the MIT License.