在不能停业务的前提下,给老代码设计分步重构路径与验证手段。
接手老项目、单文件上万行、没人敢改的核心模块。
帮我设计一份遗留代码重构方案。 【现状】{{代码现状}} 【痛点】{{痛点}} 【约束】{{约束}} 【目标】{{目标}} 输出: 1. 现状评估:按「可测试性 / 耦合度 / 重复度 / 命名与结构 / 隐式依赖」五项打分(1-5),各举一条证据,指出最该先动的一项。 2. 重构策略选择:说明选「绞杀者模式 / 抽象分支 / 逐步替换」中的哪种,为什么适合{{约束}}。 3. 分阶段计划(4-6 个阶段):每阶段写目标、改动范围、验收标准、回滚方式,每阶段都必须能独立上线。 4. 第一步做什么:给出「先加特征测试(characterization test)」的具体做法——如何在不改动逻辑的前提下,用录制输入输出建立保护网。 5. 安全改造顺序:先提取纯函数 → 再抽接口 → 后换实现,说明每一步的判据。 6. 风险清单:5 个最容易出事的地方(并发、事务边界、异常吞掉、全局状态、时间依赖),各给识别方法与防护。 7. 度量方式:用哪 4 个指标证明重构有效(圈复杂度、扇出、改动影响文件数、缺陷率),如何采集。 8. 沟通材料:给一段 150 字的话,用于向非技术管理者说明为什么需要排期做这件事。 不要建议「推倒重写」,除非能给出明确的成本与风险对比。
先补特征测试:录制真实输入与输出,锁住现有行为。
不要,风险不可控,分 4-6 个可上线的小阶段。