Skip to content

金字塔原理编程

是什么

金字塔原理编程的思想来自芭芭拉·明托(Barbara Minto)的《金字塔原理》。这本书原本讲的是如何清晰思考和表达:先给结论,再给支撑理由;把零散信息归类分组,组织成一层一层的金字塔。

OpenFlow 把这套方法用到开发计划和代码组织里:先讲清最高层目标,再拆成流程、规则、领域对象和基础设施。每一层只处理自己层级的问题,避免把业务意图和技术细节混在一起。

它有三个核心动作:

  • 归类分组:把相关思想放在一起,形成清晰的结构。
  • 自上而下表达,结论先行:先说明要达成什么目标,再解释为什么和怎么做。
  • 自下而上思考,总结概括:从具体任务中提炼共性,抽象出更高层的规则和结构。

为什么需要它

AI 生成代码时容易混淆抽象层级。例如在业务逻辑中直接拼 SQL、在控制器里塞复杂规则、在基础设施代码中反向决定业务含义。这会让代码短期可运行,但长期难以测试、复用和维护。

金字塔原理通过固定层级边界,防止“上层意图”和“底层实现”混在一起。没有它,项目容易出现职责漂移、重复规则和难以定位的隐性耦合。

如何使用

默认情况下,Writing Plan 可以使用金字塔模式组织开发计划。也可以通过配置显式设置:

json
{
  "writingPlan": {
    "mode": "pyramid"
  }
}

生成计划时,OpenFlow 会按层级梳理任务:先明确业务目标,再拆流程和规则,最后落实到领域对象与基础设施。实现时也应保持同一方向,避免低层细节反向污染高层决策。

与其他机制的关系

金字塔原理与 Writing Plan 深度集成,用于把需求整理成层次清晰的实现路径。

它也与 TDDBDD 与集成测试 共同保证质量:金字塔原理负责结构清晰,TDD 保护关键规则,BDD 验证整体行为。

Released under the MIT License.