← ClaudeAtlas

code-migrationlisted

【代码迁移】框架迁移、语言升级、API 版本迁移的技术方案和执行指南。 触发时机: - 用户要求"迁移代码"、"升级框架"、"Python 2到3" - 需要从旧框架迁移到新框架 - API 版本需要升级 提供迁移策略、步骤和验证方法。
afine907/skills · ★ 0 · AI & Automation · score 75
Install: claude install-skill afine907/skills
# Code Migration ## Goal 框架迁移、语言升级、API 版本迁移的技术方案和执行指南 ## Trigger - 用户要求"迁移代码"、"升级框架"、"Python 2到3" - 需要从旧框架迁移到新框架 - API 版本需要升级 ## 目标 为代码迁移项目提供系统化的策略、执行步骤和验证方法,确保迁移过程可控、可回滚,最大程度降低风险。 ## 工作流程 ``` 评估迁移范围 → 选择迁移策略 → 制定执行计划 → 分步迁移 → 验证 → 回滚预案 ``` 详见下方各迁移场景的具体指南。 ## 触发条件 当用户需要: - 将代码从旧框架迁移到新框架 - 升级编程语言版本(如 Python 2→3) - 迁移 JavaScript 到 TypeScript - 升级 API 版本 - 数据库 Schema 迁移 ## 迁移策略 ### 1. 绞杀者模式(Strangler Fig Pattern) 逐步替换旧系统组件,新旧系统并行运行,直到旧系统完全被替代。 ``` ┌─────────────────────────────────────────┐ │ 负载均衡器 / 代理 │ └─────────────────┬───────────────────────┘ │ ┌─────────┴─────────┐ │ │ ▼ ▼ ┌───────────────┐ ┌───────────────┐ │ 新系统 │ │ 旧系统 │ │ (逐步增加) │ │ (逐步减少) │ └───────────────┘ └───────────────┘ ``` **适用场景**: - 大型单体应用迁移 - 需要持续交付的系统 - 不能承受长时间停机 **执行步骤**: 1. 识别系统边界,定义迁移单元 2. 在新旧系统间设置路由层 3. 逐个功能迁移,每次迁移后验证 4. 旧功能下线,清理代码 ### 2. 大爆炸模式(Big Bang) 一次性完成全部迁移。 **适用场景**: - 小型项目或模块 - 新旧系统差异极大,无法并行 - 有充足的时间窗口 **风险**: - 回滚困难 - 问题集中爆发 - 停机时间长 ### 3. 并行运行模式(Parallel Run) 新旧系统同时运行,比对结果,确认无误后切换。 ``` 请求 ──┬──→ 旧系统 ──→ 结果 A ──┐ │ ├──→ 比对 ──→ 返回结果 └──→ 新系统 ──→ 结果 B ──┘ ``` **适用场景**: - 金融、医疗等对正确性要求极高的系统 - 需要验证新系统行为一致性 ## Python 2→3 迁移 ### 迁移前准备 ```bash # 1. 代码分析 pip install pylint pyflakes pylint --py2-only y