用途:该技能针对已有代码库的阅读理解,提供一套系统化流程,而不是按字母顺序逐行阅读。资料中给出的触发场景包括理解代码、弄清实现原理、重构以及修改前评估。
主要能力与流程:
- 入口优先:先找执行起点,资料示例命令为 grep -r "app.run|app.listen|@app.route|def main|if name" --include=".py" --include=".js"。建议阅读顺序为入口→路由定义→请求处理→业务逻辑→数据层→工具函数。
- 数据流追踪:按输入、校验、处理、存储、输出的顺序梳理,并询问数据从哪进入、做了哪些校验、如何转换、存到哪、有何副作用。
- 错误路径映射:资料示例命令为 grep -r "try:|except|catch|raise|throw" --include=".py" --include=".js",需明确哪里失败、如何检测、如何处理(重试、回退、抛出)、返回什么消息以及是否带上下文记录日志。
- 集成点识别:标出系统边界高风险区域,如 API、数据库、消息队列、文件系统、外部服务,并记录预期格式、返回格式、失败模式、重试逻辑与超时。
理解层级:资料给出 L1 行为(做什么)、L2 机制(怎么做)、L3 设计(为何这样)、L4 影响(还影响什么)四个层级及对应技术,如读签名与文档、读实现、查注释与 git 记录、用 grep 查调用方并检查测试。
遗留代码协议:运行现有测试确认当前行为、添加表征测试记录现状、梳理依赖图、识别不可破坏的关键路径、寻找安全改动接缝。资料提到详见 references/legacy-code-protocol.md。
阅读技巧包括先走主流程、映射副作用、识别不变量、注意耦合点;清单涵盖找入口、追踪一个请求的数据流、梳理错误处理、识别外部依赖、运行测试、定位核心业务逻辑、记录高耦合点并输出一页架构图。修改遗留代码前应先运行测试、添加表征测试、梳理依赖、识别关键路径与接缝,再做最小改动并验证行为不变。
常见模式识别:MVC、Repository、Strategy、Observer、Factory、Decorator、Adapter。
限制:资料未提供安装命令、收费方式、平台信息或具体工具形态,这些内容暂未提供。