SuperAPI AI 工具集

codebase-design

设计与创作

查看项目

更新于 10-16 00:02

技能介绍

用途:为代码设计与重构提供统一语言和原则,目标是让调用方获得杠杆、维护者获得局部性、所有人获得可测试性。核心是设计“深模块”——小接口背后承载大量行为,接口即测试面。

主要能力:给出精确术语表(模块、接口、实现、深度、接缝、适配器、端口、杠杆、局部性),并强调不得用 component、service、API、boundary 等替代。提供深与浅模块的对比、接口设计自问(能否减少方法、简化参数、隐藏更多复杂度),以及删除测试、接口即测试面等原则。

使用方式:在设计与重构模块接口、决定接缝位置时显式调用。测试可测性由形状决定:接受依赖而非自行创建,返回结果而非修改状态。不要仅为可 mock 而声明接口:先问真实依赖能否在测试中运行,能则直接用,不能才用端口加生产与测试两个适配器。Go 断言建议用 testify,require.* 用于无法继续时,assert.* 用于可继续时,参数顺序为 want 在前。

适用场景:模块接口设计、重构、接缝与适配器决策、可测试性设计。

限制:资料未提供安装命令、平台、收费或价格信息;深度定义为接口杠杆而非实现行数与接口行数之比,并明确拒绝把“边界”“可 mock 性”作为声明接口的理由。进一步内容见 DEEPENING.md 与 DESIGN-IT-TWICE.md。