跳到正文

第6章学习笔记:评审、重构与代码质量

课程笔记

把评审变成风险控制,把重构变成小步可验证的设计演化。

关联:章节 第6章 评审、重构与代码质量

第6章笔记:评审、重构与代码质量

本章目标

把评审变成风险控制,把重构变成小步可验证的设计演化。 本章不是术语表,而是一条从问题到证据的工作链。先确认用户或团队要保护的结果,再把决定写进可版本化制品,最后由测试、指标、反例或演练证明它在边界与故障下仍成立。

七节联系

  • 代码评审看什么:评审先查行为、风险和证据,再看可读性与风格;关键规则是作者说明意图与风险,评审者给出可执行问题并区分阻断与建议。
  • 小型PR与评审吞吐:批量越小,理解成本和缺陷隐藏空间越低,但切片必须仍具端到端意义;关键规则是PR应有单一决策主题、明确测试证据和可独立回退边界。
  • 坏味道不是自动罪名:重复、长函数、过大模块是变化风险信号,是否重构要结合变化频率和错误历史;关键规则是以维护风险和认知负担解释重构,不用指标阈值机械裁决。
  • 表征式重构与安全网:修改遗留代码前先用表征测试记录现有可观察行为,再小步改变结构;关键规则是每一步保持外部行为,若要修缺陷先用失败测试明确行为变更。
  • 命名、抽象与认知负担:好抽象压缩稳定概念,坏抽象把偶然相似绑在一起;关键规则是命名表达领域意图与单位;抽象应让调用者少记规则而非多学术语。
  • 技术债登记与偿还:技术债是为短期收益接受的未来成本,需要本金、利息、触发条件和所有者;关键规则是不把所有缺陷叫债;债务决策必须说明收益、风险、利息证据和退出计划。
  • 评审文化与心理安全:严格评审针对制品和风险,不针对人格;团队要允许暴露未知和撤回错误;关键规则是冲突围绕可观察证据解决;辱讽和身份压制本身是交付风险。

学习时给七节画依赖箭头:前一节产出的对象、规则或制品如何成为后一节输入?若某节可以被随意挪走而完全不影响上下文,说明你仍在孤立背诵,需要用一个贯穿案例重新连接。

章内练习

  1. 用“订单改动先核对不变量、兼容、迁移、测试和监控,再检查命名与重复”重做正常、边界和故障三类验收,产出可由同伴复核的制品。
  2. 用“把一次大改拆成兼容接口、双写观测、流量切换和旧路径删除四个可回退PR”重做正常、边界和故障三类验收,产出可由同伴复核的制品。
  3. 用“三处税率逻辑经常同时修改且两次漏改,证据支持提取统一策略;一次性迁移脚本则可保持局部”重做正常、边界和故障三类验收,产出可由同伴复核的制品。
  4. 用“为旧账单生成器保存代表性输入输出快照,逐步提取计算阶段并持续对比”重做正常、边界和故障三类验收,产出可由同伴复核的制品。

每次练习都保留背景、输入、决定、输出、验证、失败处置和负责人。只写结论不算完成;只贴截图也不算证据。完成后交换给同伴,只允许对方根据制品复现你的判断,无法复现处就是下一轮修改入口。

错误复盘

把错题标成目标误判、边界遗漏、责任空缺、契约不清、验证不足或恢复缺失。不要写“粗心”。一周后更换领域重做一道情境题;能在新名词下保持同一证据链,才说明方法已经迁移。阶段卷使用独立题池,不能靠记住随课题答案过关。