← 返回工作流

工作流 03 / 05

代码设计

创建或完善可实施方案,但不编写生产代码。

不写生产代码

核心思想

先命名问题,再选择技术。每一分复杂度都必须物有所值,否则不引入。

工作流程

  1. 01
    选择模式

    从零设计新方案,还是完善已有设计——两种模式问的问题不同。

  2. 02
    建立上下文

    明确问题、目标、约束和验收行为,读取仓库已有的能力。

  3. 03
    探索设计压力

    先命名真实问题:隐藏副作用、语义重复、真实变化轴……没有压力就不新增抽象。

  4. 04
    比较方案

    只比较取舍实质不同的方案,推荐满足需求的最低复杂度。

  5. 05
    可维护性检验

    新奇写法必须拿出具体收益;只有同一领域规则才允许复用。

  6. 06
    产出方案

    给出边界、契约、取舍和实施顺序;不写生产代码。

关键机制

无压力不抽象

说不出真实设计压力(隐藏副作用、语义重复、真实变化轴……),就不引入新抽象。

新奇税

反射、元编程、新依赖、设计模式都必须拿出具体收益,并说明它为什么存在。

按语义复用

只有实现同一领域规则、且应共同演进时才复用;看起来相似不算理由。