把"做一个图书管理系统"这句话,分别丢给两类AI编程工具,你会看到两种截然不同的反应。
一类拿到需求就开始生成代码。对话框里很快出现Controller、Service、Mapper,速度飞快,像极了身边那种"先干起来再说"的同事。
另一类不急着写。它先抛回来一串问题:系统有哪些角色?图书分类怎么定义?借书流程要不要审批?权限怎么分?像个有经验的产品经理,追着你要答案。
同样一句需求,为什么行为差这么多?
两类工具,两种物种
现在市面上的AI编程工具,看起来都在"帮你写代码",但底层其实是两种不同的东西。
第一种是通用代码助手。 典型代表是Copilot、Claude Code这类通用Agent。它们的能力模型是"补全"和"改写"——你给它上下文,它预测接下来要写什么。单文件补全、跨文件重构、按你的指令改代码,这些是它们的强项。它们默认的假设是:需求你已经想清楚了,你的工作是把它翻译成代码。
第二种是专家级编程智能体。 这类工具不是来帮你把代码写快一点的,是来替你扛下"把一个系统从想法做到能跑"。它们的起点不是一行代码,而是一句模糊的需求。它们默认的假设是:需求你没想清楚,而没想清楚的代价,比代码写错大得多。 所以它们不会急着生成代码,而是先把需求边界、数据模型、业务流程、权限范围问明白,再进入设计,最后才是编码——像团队里那位坚持"先对齐再动手"的资深工程师,而不是一条只会执行的生产线。
拿"做一个图书管理系统"这句话来说,两种假设直接决定了两种行为。
通用代码助手听到这句话,脑子里是"生成一个图书实体、一个借阅接口、一个页面"。它不会问你"系统是给管理员用的还是给读者用的",因为它默认你自己知道。
专家级智能体听到这句话,脑子里是"这个需求边界太模糊,先澄清,再设计,最后才是代码"。它会先逼你把用户角色、业务流程、权限边界想明白,把答案写进文档,然后才动手。
直接开写的代价:返工
我见过太多人踩同一个坑:把一句话需求丢给AI,AI刷刷刷生成几百行代码,看起来能跑,实际全是错的。
不是AI写得差,是需求本身没定。
你脑子里想的"图书管理系统",可能是公司内部资料室用的,只有管理员一个人操作;AI默认的却是标准的B2C借阅系统,有注册、有会员、有积分。方向错了,代码再漂亮也是白写。
更麻烦的是,通用代码助手不会主动告诉你"这个需求我没理解透"。它会假装理解,然后自信地写下去。等你发现方向错了,它已经生成了几千行代码。改,比重写还累。
有个做后端的朋友跟我吐槽过:他让AI写一个报表导出功能,需求说"导出上个月的订单数据"。AI很快写完了,他一看,导出的字段里没有金额合计——他忘了说,AI也忘了问。一来一回改了三轮,最后他感叹:"AI写代码半小时,跟它对需求对了一天。"
这个场景里,问题从来不在"写代码"这一环。
先问,是把返工成本前置了
专家级智能体的"先问三个问题",看起来比直接开写慢,实际上是把返工成本提前付了。
它问你的每个问题,背后都是一类常见的需求盲区:
- 问"系统有哪些角色",是在确认权限边界,避免做出一套没有角色区分的系统
- 问"图书分类怎么定义",是在确认数据模型,避免表结构设计返工
- 问"借还流程要不要审批",是在确认业务流程,避免核心逻辑做错方向
你回答问题的过程,就是需求从模糊变清晰的过程。答完之后,它会生成需求文档、数据库设计、接口定义、页面清单——这些文档不是摆设,后面生成的每一行代码,都能在文档里找到出处。
换句话说,它让"需求→设计→代码"始终咬在同一条主线上:文档里怎么写的,代码就是怎么长的。而通用代码助手的世界里没有这条主线:需求在你脑子里,代码在文件里,中间那段没人管。
这不是谁替代谁,是干的活不一样
说清楚一点:通用代码助手不是不好,它解决的是"写代码"的效率问题;专家级智能体解决的是"一个人从零把一个系统做到能上线"的问题。两者根本不在一层。
对大多数已经在跑的老项目,通用Agent是更好的选择——上下文理解强,改代码利落,跟现有代码风格贴合。
但对两类人,专家级智能体的价值无可替代:
一类是个人开发者。一个人接项目,没人帮你分析需求、没人帮你设计,你缺的恰恰是"写代码之前"的整套能力。
另一类是Java后端被推着做全栈的人。后端经验还在,前端和设计是空白,需要有人把"需求→设计→前端→后端"整条路铺好,而不是只帮你把后端写得快一点。
在IDEA的插件市场能搜到这类工具。比如"飞算JavaAI",一个专注Java生态的编程智能体——它把"图书管理系统"这种需求拆成需求分析、前后端设计、前端开发、后端开发几个阶段,每阶段产出文档、等你确认再往下走。它做的事情,本质上是把软件工程里"先想清楚再做"的老规矩,交还给一个懂行的智能体,而不是交给一条自动化产线。
判断一个AI工具,先看它默认你是什么样的人
现在选AI编程工具,很多人的思路是比谁生成代码快、谁模型强。但模型迭代太快了,今天的第一名明天可能就落后。
我更建议换一个判断标准:这个工具默认你是什么样的人?
如果它默认你需求已经想清楚了,只缺一个打字快的人——那它是你的效率放大器,你的判断力决定了它好不好用。
如果它默认你需求模糊、方案没人帮你把关,主动把澄清和设计环节扛起来——那它是在帮你补短板,适合一个人扛项目的场景。
一句话需求给出去,AI是直接开写,还是先追着问你三个问题?这个问题想清楚了,你就知道自己该选哪一类。