用途:该技能帮助在代码中消除“知识重复”。它强调 DRY 针对的是知识重复,而不是代码相似——外观相似但代表不同业务概念的代码不应合并。
主要能力与用法:
- 三次法则:同一逻辑出现 3 处及以上时再提取为共享函数或工具;仅出现 2 处时通常可接受重复。
- 集中配置:常量、端点、配置值应只有一个来源,例如统一放在 config/api.ts 中导出 API_BASE_URL 与 API_ENDPOINTS。
- 共享类型:类型只定义一次,放在 types/ 目录并全局导入,避免多处定义出现细微差异。
- React 自定义 Hook:将重复的 fetch 与状态模式提取为 useFetch<T>(url) 等 Hook,同样遵循三次法则,不提前抽象。
适用场景:同一校验逻辑散落在多个表单、同一 URL 出现在多个文件、类型定义重复且不一致、多个组件重复相同的请求与加载状态模式、测试中重复的初始化代码可提取到 beforeEach 或 fixtures。
限制与注意:不要合并外观相似但代表不同业务概念的代码,例如忠诚度折扣与促销折扣应保持独立,否则会造成意外耦合。避免过早抽象,应在观察到重复后再提取。若抽象需要 5 个以上参数或大量条件分支,可能并非真正的重复。相似代码若独立变化,应保持分离。
资料未提供安装命令、收费信息或具体平台支持细节。