Matt Pocock codebase-design 视角下,对
luying-booking-backend
全部 18 个源文件的模块深度评估。识别 6 个重构建议,dev 估时总计约 6.5 天。
任意有 interface + implementation 的单元。可以是函数、类、包或跨层切片。
调用方需要知道的一切:签名 + 不变量 + 错误模式 + 性能特征。
多少行为藏在多小的接口后面。深度 = 调用方的 leverage。
可在不修改此处的前提下改行为的位置。seam 放哪是独立的设计决策。
坐在 seam 上满足 interface 的具体物。描述「角色」而非「内容」。
leverage = 调用方收益;locality = 维护者收益(改动 / bug / 知识集中在一处)。
删掉这个 module,复杂度集中消失 = pass-through;散落到 N 个 caller = earning its keep。
调用方和测试穿过同一个 seam。接口越复杂,能测的越少。
一个 adapter 是假 seam(hypothetical);两个 adapter 是真 seam(real)。
悬停 / 点击单元格查看评估理由。
按 ROI 排序 · 全部已发到 GitHub Issue · 标签 audit,enhancement
本项目此前已有 4 个真实 bug / 安全问题(label audit,security)。本次 codebase-design 视角的 6 个重构建议
完全不是 bug——代码功能正常,仅结构优化。dev 侧应优先修 bug,重构建议排期自定。
按"投入产出比 + 风险"排序,从最简单可逆的改动开始