设计红旗
更新于 2026-10-01
综合前筛查每个候选。红旗是应修订或拒绝该形态的理由。
浅模块公开面很大,却几乎没隐藏复杂度。按公开面背后隐藏的能力与策略,相对该面尺寸,判断深度。优先简单接口配实质行为。
不要把深模块与深调用链混淆。深调用链把理解散在多层。深模块把能力集中在一个接口后。
留意这些迹象:
- 调用方要协调多个方法才能完成一次操作。
- 公开选项暴露了内部阶段或实现选择。
- 学会接口并不能让调用方免于了解实现。
信息泄漏使多个模块依赖同一内部决策。同一表示、策略或协议细节出现在多处,改一处就要协调多处编辑。
公开再导出传输层或 wire 类型是泄漏。在接口后把外部数据解析为领域类型。存储 schema、框架对象与协议细节保持私有。
按时间分解是按执行顺序而非所掌握的知识来组织模块。把加载、校验、转换、保存拆成多阶段,往往会在多个边界重复同一表示及其不变量。
按领域知识与所有权分组代码。不同时刻运行的方法,若保护同一决策,仍可属于同一模块。
透传方法把相同参数原样转发给同形方法。多一层却不隐藏复杂度。
删掉它,或把职责移到能完成操作的模块。仅当转发边界增加策略、适配或独立抽象时才保留。
本站是非官方的 pstack 中文学习站,和 poteto 没有隶属关系。译文对照的是 cursor/plugins 仓库里的 pstack/ 目录。本站不发行中文版插件。 github.com/cursor/plugins