AI Coding 避坑指南:搞不定复杂项目,多半是拆解没做好

凌晨两点。
屏幕上是第 14 版报错信息。
盯着 AI 生成的那堆代码,感觉像在看天书。变量名乱七八糟,逻辑绕来绕去,改了一个 Bug,冒出三个新的。
叹了口气,把键盘推开。
“让它写个贪吃蛇,三秒搞定。让它写个带鉴权、数据库、后台管理的系统,写到一半就疯了。”
这是上周一个粉丝发给我的原话。
我回了他一句:
“编程就是拆解 + 验证,没别的了。”
他回了一个”?”。
我说:“以前你觉得这是废话,是因为你以前需要自己写代码,没精力思考这两件事。现在 AI 能写代码了,这两件事才是你唯一需要做的事。”
01
先说一个让很多开发者不舒服的真相。
AI 写不好复杂项目,不是因为模型不够聪明,是因为你给它的指令太”大”了。
很多人用 AI 写代码的习惯是这样的: “帮我做一个类似 Notion 的笔记应用,支持 Markdown、实时协作、标签管理、权限控制。”
然后 AI 给你吐出一堆代码。你跑了一下,报错。你改了一下,又报错。你发现,这堆代码就像一坨意大利面,根本没法维护。
这时候你会怪 AI:“这模型不行啊,逻辑太差。”
但问题不在模型,在你。
大语言模型的本质是什么?是概率预测。它没有”全局架构”的概念,它只有”下一个 token 是什么”。
你给它一个宏大的需求,它只能基于概率去”猜”一个实现。这种猜测在简单场景下(比如写个正则、做个排序)是准的,但在复杂场景下(比如处理并发、管理状态、设计接口),就是灾难。
复杂项目的核心难点,从来不是”代码怎么写”,而是”问题怎么切”。
02
把时间线拉长一点看。
过去十年,我们学编程,学的是语法、是框架、是设计模式。我们以为掌握了这些,就能搞定复杂项目。
但 AI 时代,语法和框架的门槛被抹平了。
现在的核心能力,变成了两件事:拆解能力 + 验证能力。
拆解:把大问题变成小问题

拆解不是简单的”分模块”。
很多新手理解的拆解是:前端、后端、数据库。 这叫”分工”,不叫”拆解”。
真正的拆解,是把一个模糊的业务需求,翻译成 AI 能执行的、原子化的技术任务。
我常用的拆解三层法:
第一层:业务拆解(User Story) 别跟 AI 说”做一个用户系统”。 它听不懂。 你得说:“用户需要能注册、登录、找回密码,且密码需要加密存储。”
第二层:技术拆解(Interface & Data) 别跟 AI 说”写个 API”。 太泛了。 你得说:“定义一个 POST /api/login 接口,接收 email 和 password,返回 token 和 user_id。数据库表结构包含 id, email, password_hash。”
第三层:任务拆解(Implementation) 别跟 AI 说”实现登录逻辑”。 它会自由发挥,然后发挥到你不想看到的地方。 你得说:“1. 校验邮箱格式。2. 查询数据库。3. 比对 bcrypt 哈希。4. 生成 JWT。5. 处理错误情况(用户不存在、密码错误)。”
每一层,都是上一层的具体化。
当你把任务拆解到第三层的时候,AI 写代码的准确率会从 50% 飙升到 95% 以上。
因为这时候,AI 不需要”思考”,它只需要”翻译”。
学习曲线与失败点:
刚开始练拆解,你会觉得很慢。 以前你直接上手写,现在你要先画图、写伪代码、定义接口。 你会觉得”这不脱裤子放屁吗”。
这是正常的。
你在训练自己的”拆解肌肉”。 前三个项目,你会觉得效率降低了 30%。 但从第四个项目开始,你会发现 AI 生成的代码几乎不需要改。 整体效率会提升 3 倍以上。
最大的失败点在于:舍不得拆解。 总觉得”这个功能很简单,AI 肯定能懂”。 结果就是:AI 不懂,你也不懂 AI 懂了什么,一起懵。
验证:确保每一步都对

拆解完了,AI 写完了,就结束了吗?
没有验证的代码,就是定时炸弹。
AI 有个毛病:它很自信,但它经常自信地犯错。
漏掉边界条件是常事。用错库的版本也不稀奇。 最要命的是,它有时候会写出那种”能跑但有安全漏洞”的代码。
所以,验证比写代码更重要。
验证的三重防线:
1. 静态验证:让 AI 自己查错 代码生成后,不要急着跑。 先让 AI 自己 Review 一遍:“这段代码有没有潜在的空指针异常?有没有 SQL 注入风险?” AI 查 AI,往往比人眼更准。
2. 动态验证:测试驱动开发(TDD)的回归 以前我们觉得 TDD 太慢,现在 TDD 是 AI Coding 的救星。 先写测试用例,再让 AI 写代码。 测试过了,才算过。 测试没过,把错误信息喂给 AI,让它改。这个循环的速度,决定了你的开发效率。
3. 人工验证:Code Review 的降维 你不需要看每一行代码。 你只需要盯住几个关键点: 接口定义对不对?数据流向清不清晰? 至于有没有明显的逻辑漏洞——跑一遍测试就知道了。
你的角色,从”搬砖工”变成了”监理”。
03
说一个可能让部分”Prompt 工程师”不舒服的判断。
AI Coding 时代,最先被淘汰的不是”不会写代码的人”,是”不会拆解问题的人”。
因为 AI 写代码的速度,已经超过了 99% 的人类。 但 AI 还不知道”该做什么”,还不知道”这个需求合不合理”,还不知道”这个架构能不能扩展”。
而这些,恰恰是拆解能力的核心。
所以回到开头那个问题:“为什么 AI 搞不定复杂项目?”
我的回答是:
不是 AI 搞不定,是你没把它”喂”好。
复杂项目不是不能做,是要切成小块做。 一口吃不成胖子,AI 也一样。
拆解 + 验证,是 AI 时代的编程底层操作系统。
工具变了,但解决问题的逻辑没变。
Q&A
Q:拆解这么细,会不会比我自己写还慢?
A:刚开始会。因为你在训练自己的”拆解肌肉”。但一旦你熟练了,拆解的速度会非常快。而且,拆解清晰后,AI 生成的代码几乎不需要改,整体效率是指数级提升的。
Q:AI 写的代码有 Bug 怎么办?
A:不要自己改!把错误信息、堆栈跟踪、相关代码片段喂给 AI,告诉它”这里报错了,请修复”。让 AI 修 AI 的 Bug,通常比人修得快。
Q:什么样的项目适合用 AI 做?
A:逻辑清晰、边界明确的项目最适合。如果是那种需求天天变、逻辑极其复杂的”屎山”项目,建议先做重构和梳理,再引入 AI。
Q:我需要学很多新工具吗?
A:不需要。核心是思维方式的转变。工具只是辅助,拆解和验证的能力,才是你的护城河。
写到这里,我想起了刚开始学编程的时候。
那时候觉得,能写出一个能跑的程序,就是大神。
后来觉得,能写出优雅的代码,才是大神。
现在我觉得,**能把一个复杂问题拆得清清楚楚,让 AI 去实现,还能确保它不出错——这才是真正的大神。**
路还长,慢慢走。
夜雨聆风