用MonkeyCode做项目:原来AI编程可以这么规范

用MonkeyCode做项目:原来AI编程可以这么规范

我踩过的坑

做独立开发两年多,我最大的感受是:写代码其实不难,难的是想清楚再写

很多次我打开IDE就开始写,结果写着写着发现架构不对,回过头来重构,然后又发现数据结构不合理,再改……一个本来计划一周做完的小工具,最后拖了两个月。

直到我开始用MonkeyCode的SDD(规范驱动开发)流程。

SDD是什么

SDD = Specification-Driven Development,规范驱动开发。

核心理念是:AI不直接写代码,而是先在规范框架内完成设计和拆解

这听起来像是"多此一举",但实际用下来,这个"多此一举"让我少走了太多弯路。

SDD流程实战

需求阶段

我在MonkeyCode里输入:

做一个Markdown博客系统,支持文章列表、文章详情、标签筛选,Next.js + Tailwind CSS

设计阶段1:产品设计

MonkeyCode没有直接开始写代码,而是先给出了产品设计方案:

┌─────────────────────────────────────────────────┐
│  博客系统 - 产品设计方案                          │
├─────────────────────────────────────────────────┤
│  页面结构:                                       │
│  ├─ 首页(文章列表 + 标签筛选)                   │
│  ├─ 文章详情页                                   │
│  └─ 404页面                                      │
│                                                 │
│  功能模块:                                       │
│  ├─ 文章列表:分页、标签筛选、搜索                │
│  ├─ 文章详情:标题、正文、标签、发布时间          │
│  └─ 标签系统:标签云、多标签组合筛选              │
│                                                 │
│  数据模型:                                       │
│  ├─ Article: id, title, content, tags[], date   │
│  └─ Tag: id, name, color                        │
└─────────────────────────────────────────────────┘

看到这里我才意识到,我原本计划做的东西可能太复杂了——标签筛选和搜索其实是两个功能,应该分开做还是一起做?

在代码开始之前发现问题,成本是零。代码写完发现这个问题,成本是两小时重构。

设计阶段2:技术设计

确认产品设计后,MonkeyCode给出了技术方案:

┌─────────────────────────────────────────────────┐
│  技术方案                                         │
├─────────────────────────────────────────────────┤
│  目录结构:                                       │
│  app/                                            │
│  ├─ page.tsx (首页-文章列表)                     │
│  ├─ post/[id]/page.tsx (文章详情)               │
│  └─ layout.tsx (布局)                            │
│                                                 │
│  组件划分:                                       │
│  ├─ ArticleCard (文章卡片)                       │
│  ├─ TagFilter (标签筛选)                        │
│  └─ MarkdownRenderer (Markdown渲染)              │
│                                                 │
│  状态管理:React Context + useReducer           │
│  Markdown解析:react-markdown + remark-gfm      │
└─────────────────────────────────────────────────┘

任务拆解

最后是任务列表,每个任务都有明确的验收标准:

[ ] 任务1: 搭建Next.js项目,配置Tailwind
[ ] 任务2: 创建数据结构(Article, Tag)
[ ] 任务3: 实现文章列表页
[ ] 任务4: 实现标签筛选功能
[ ] 任务5: 实现文章详情页
[ ] 任务6: 实现Markdown渲染
[ ] 任务7: 部署到Vercel

每个任务都是可交付的、可验收的。做完一个任务,成就感是具体的。

对比:没有SDD vs 有SDD

没有SDD的流程

打开IDE → 开始写代码 → 发现架构问题 → 重构
→ 发现数据问题 → 再重构 → 终于跑通了
→ 加新功能 → 发现要改很多地方 → 继续重构
→ 两个月后终于做完

有SDD的流程

输入需求 → AI出设计方案 → 我确认/调整
→ AI出技术方案 → 我确认/调整
→ AI拆解任务 → 我按任务列表执行
→ 5天后交付

第二种流程里,代码只写了一遍。

MonkeyCode的SDD和其他工具有什么不同

Cursor和Copilot也支持"项目级"开发,但它们的逻辑是:

  1. 你说需求 → 给你一堆代码
  2. 你说修改 → 给你一堆修改
  3. 你说再加功能 → 再给一堆

这是"代码补全"模式,不是"规范开发"模式。

MonkeyCode的SDD强制你先想清楚:

  • 需求阶段:AI和你对齐"做什么"
  • 设计阶段:AI给出"怎么做"的技术方案
  • 任务阶段:拆解成可执行的步骤
  • 代码阶段:按规范生成

每一步都有人的参与,AI不是替代你思考,而是辅助你思考。

什么人适合这个流程

  • ✅ 想做完整项目但不知道从何入手的开发者
  • ✅ 团队没有流程规范,想引入规范但成本太高
  • ✅ 希望AI帮你做设计,不只是帮你写代码
  • ❌ 已经对架构设计驾轻就熟的老手(可能觉得流程太啰嗦)
  • ❌ 需要快速验证想法的探索性开发

实际数据

我统计了用MonkeyCode SDD流程做的几个项目:

项目 预估时间 实际时间 重构次数
Todo应用 3天 2.5天 0次
博客系统 5天 4天 1次
电商后台 10天 9天 0次

对比之前没有SDD流程的时候,平均每个项目少重构1.5次,交付时间缩短20%左右。

小结

MonkeyCode的SDD流程,本质上是把"架构设计"这个被很多独立开发者忽视的环节,重新放回了开发流程里。

它不会让你变成"只会说需求的老板",反而会逼着你认真思考自己的需求是否合理、架构是否可行。

好的工具不是替代你工作,而是让你工作得更规范。

posted @ 2026-05-28 11:05  机房管理员  阅读(40)  评论(0)    收藏  举报