【学习分享】AI 编程工程流

AI 编程最大的问题,不是“会不会写代码”

AI 已经能把“写程序”这件事变得很便宜。你说几句话,它就能搭一个项目、补一个功能、修一个报错。问题在于:项目一复杂,随口指挥 AI 的代价就会迅速变高。

视频里用一个很具体的例子说明这件事:从零做一个 FC 模拟器,并让它跑起《超级马力》。作者自己并不懂模拟器怎么写,但不是直接让 AI “给我写一个模拟器”,而是把 AI 编程拆成一个更像工程流程的过程。

第一步:先把需求说清楚

很多 AI 写出来的东西“不差,但总是不对味”,根本原因往往不是模型太弱,而是人自己也没想清楚要什么。

视频里的做法是,把提示词拆成四块:

  • 目标:我要用 Python 做一个 FC 模拟器,最终能跑《超级马力》。
  • 输入:当前项目是一个 UV 创建的 Python 工程,ROM 文件已经准备好。
  • 输出:请在 docs 目录下生成需求文档 Proposal.md。
  • 步骤:我不懂 FC 模拟器,请用提问的方式帮我确认需求,不要擅自猜测。

这个思路很关键:不明确的地方,让 AI 先问,而不是让它先写。

第二步:把设计落到文件里

需求确定后,不要马上开写代码,而是让 AI 根据 Proposal.md 生成详细设计。

这里的重点不是文档本身有多漂亮,而是让系统被拆成相对独立的模块,例如 ROM 加载、CPU 模拟、PPU 模拟等。模块边界越清楚,后面让 AI 分头实现、分头测试就越稳。

视频里还有一个很实用的习惯:每一步的结果都写进文件,而不是一直堆在聊天上下文里。这样可以让新会话只读取必要文档,减少上下文膨胀,也降低 AI 因压缩上下文而丢细节的风险。

第三步:按模块拆任务

有了详细设计之后,再让 AI 为每个模块生成单独的任务清单,并用 Progress.md 记录整体进度。

这一步的意义是把“做一个大项目”变成“完成一组边界清楚的小任务”。对 AI 来说,小任务更容易写对;对人来说,也更容易检查它到底完成了什么。

第四步:用主 Agent 管进度,子 Agent 写模块

如果把所有任务都交给一个 Agent 从头写到尾,上下文会越来越长,成本高,错误也更难控制。

视频里的方案是:主 Agent 只负责读取 Progress.md、分配任务和监督进度;子 Agent 负责具体模块的实现。每个子 Agent 都拿到自己的详细设计、任务文件、测试要求和验收标准。

更重要的是,不是“写完就算完”。每一行重要代码都要有对应测试,最后还要通过 mypy、Ruff 和 pytest。视频里的示例最终生成了模块化代码、单元测试,并通过了 196 个测试。

这套流程真正有价值的地方

更稳的 Vibe Coding,大概应该长这样:

  • 先让 AI 帮你澄清需求,而不是直接开写。
  • 把需求、设计、任务、进度都沉淀成文件。
  • 控制单个会话的上下文长度,必要时开新会话。
  • 按模块拆任务,让多个 Agent 各做一小块。
  • 用类型检查、代码规范和单元测试兜底。
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇