最开始,用 AI 写代码,常常是对 AI 发号施令,可结果呢?AI 给的代码看着能跑,实际一用全是坑:要么不符合意图,要么使用场景不对,改来改去花的时间,比自己从头写还多。之前文章的好多评论,也总能看到有人评论 AI 写的代码垃圾,我常常想:是 AI 不好用?还是 AI 不会用?
现在,我多半是尽量描述我的目标或问题,之后让 AI 给方案,这样就知道 AI 下一步的具体行动,是不是和我要的结果一致,方案是否实施的大权也自然而然握在我的手里。
最近,又发现了更高级一些 AI 的使用方法,就是把 AI变成自己的高级秘书,通过反向提问,帮我把需求、逻辑、边界情况全梳理清楚,最后写出来的代码一次成型,几乎不用改!
与和AI交互的三个阶段
我踩了无数坑才明白,用AI写代码的效果天差地别,核心就在于你和AI的交互方式,从低效到高效,一共分3个阶段:
第一阶段:命令式索要答案
变身黄世仁,让杨白劳去干活:“帮我在画面添加一个返回顶部的按钮”、“帮我修改上传图片中的 bug”。当项目框架、业务、场景,AI都清楚,需求简单的情况下,直接向 AI 发号命令即可。
第二阶段:描述目标要方案
当碰到稍复杂的问题时,我现在常用的做法,是把问题背景、自己的目标说清楚,让AI先给方案,我判断要不要落地实施。
比如说“现在这个画面我觉得有些不美观,全方面分析一下如何提升画面的整体美观”,之后,就可以从 AI 的回答中,获得一套各个方面进行优化的方案,我常常把内容复制到一个单独的 markdown 文件中,更容易查看。之后把文档中的内容,分模块发给 AI ,让它执行,当然,前提是 AI 方案我同意才会让它执行。
这个方式能避开大部分基础坑,方案的修改策略都会写的很清楚,一点都不担心 AI 执行偏差。
第三阶段:让AI反向提问当架构师
更高效的玩法,也是我现在遇到复杂需求必用的方法。
只需要说清大方向,让AI站在资深架构师的角度,通过提问帮我把需求细节、边界场景、异常处理、架构设计全部梳理清楚。
等你答完所有问题,需求已经100%对齐,AI写出来的代码一次成型,几乎不用改,还能跟着AI的提问,学会资深开发者的思考逻辑。
三个核心实战场景,从新手到高手全流程覆盖
我把开发中最高频、最容易踩坑的3个核心场景整理出来,每个场景都对应上面3个阶段的交互方式,高阶玩法的话术可以直接复制,新手看完就能用。
场景1:Bug调试,从“求修复”到“根因定位”

“我这个Vue3后台管理项目,点击导出Excel按钮就会控制台报错,你通过提问我来答,一步步引导我定位问题根源,再给出对应的修复方案”
AI会通过这些提问,带你精准找问题:
- 控制台的完整报错信息是什么?报错堆栈具体指向哪一行代码?
- 这个bug能不能稳定复现?是所有账号都能复现,还是只有特定权限、特定数据的场景才会出现?
- 这个导出功能之前是正常运行的吗?出现bug之前,你修改了哪些相关代码?
- 点击导出按钮后,核心执行逻辑是什么?是调用后端接口拿文件流,还是前端纯前端生成Excel?
- 相关的变量有没有做空值处理?比如接口返回异常时,有没有做try/catch异常捕获?
- 项目里的Excel导出依赖包,最近有没有更新版本?有没有清缓存、换浏览器复现过?
真实落地案例
我之前带的一个新人,最开始直接甩报错给AI,改了3次都没修好。用这个高阶方法,2分钟就定位了问题:他在代码里直接取了res.data.list,但是导出失败的时候,后端返回的data是undefined,没有做空值判断和异常捕获。 最后不仅修好了bug,还完善了整个导出模块的错误处理逻辑,后续再也没出现过类似的崩溃问题。
场景2:逻辑设计,从“写功能”到“全场景闭环”
“我要做一个电商小程序的商品搜索功能,用uni-app开发,你通过提问的方式,帮我把所有边界情况、异常场景和用户体验细节全部问出来,再输出完整的实现方案”
AI会通过这些提问,帮你堵上所有坑:
- 搜索的触发方式是什么?是输入关键词实时触发,还是点击搜索按钮/按回车才触发?
- 关键词为空的时候,是清空搜索结果回到默认商品列表,还是提示用户“请输入搜索内容”?
- 快速输入内容/连续点击搜索按钮,要不要做防抖处理?比如300ms内只发一次请求,避免重复调用接口。
- 接口请求过程中,要不要展示loading加载状态?搜索按钮要不要同步禁用,避免用户重复点击?
- 接口请求失败、用户断网的时候,要不要给用户友好提示?需不需要提供重试按钮?
- 搜索结果为空的时候,怎么展示?是只显示“暂无相关商品”,还是同步推荐热门商品给用户?
- 移动端输入的时候,键盘弹出会不会遮挡输入框和搜索结果?要不要做页面滚动适配?
- 搜索历史记录要不要保存?最多保存多少条?支不支持一键清空历史记录?
真实落地案例
之前有个做电商的朋友,原来的搜索功能经常被用户投诉,用这个方法梳理完所有细节,把防抖、空值处理、加载态、异常重试、无结果推荐全加上了,用户投诉直接降了80%,搜索转化率还提升了15%。
场景3:代码重构,从“改格式”到“架构优化”
“我想重构Vue3项目里用户中心模块的这段业务逻辑,核心目标是提升代码复用性、降低后续维护成本,你通过提问的方式,帮我理清重构后的架构和代码结构”
AI会通过这些提问,帮你搭好可维护的架构:
- 这段代码里,哪些是通用的业务逻辑?比如用户信息格式化、权限判断、登录态校验,能不能抽离成独立的工具函数?
- 哪些代码是多个页面/组件高频复用的?能不能封装成公共组件,或者可复用的自定义Hook?
- 模块里的状态管理,应该放在组件局部props里,还是全局的Pinia状态仓库?需不需要同步到URL参数里,实现刷新页面状态不丢失?
- 要不要按照单一职责原则,把现在的大组件拆分成更小的子组件?比如用户信息展示、账号安全设置、收货地址管理,拆成独立的子组件?
- 重构后的代码,要不要兼容旧的业务逻辑?有没有对应的单元测试需要适配?
- 重构过程中,有没有核心的业务流程不能中断?需不需要做灰度兼容?
真实落地案例
帮一个粉丝重构后台管理系统,原来一个用户中心组件写了2300多行代码,改一个小需求就要翻遍整个文件。用这个方法梳理完,拆成了4个独立子组件、3个可复用的自定义Hook、1个工具函数文件,代码量直接减了一半,后续改需求只需要改对应的模块,维护成本降了90%。
学会与 AI 对话,效果天差地别
很多人用了几年AI,还是停留在“代码搬运工”的阶段,核心就是选错了和AI交互的模式。
传统低效模式
- 交互逻辑:我提需求 → AI盲目写 → 我痛苦改
- 代码质量:产出割裂、补丁式代码,到处是隐藏坑
- 个人成长:只会做代码搬运工,能力长期停滞不前
AI引导高效模式
- 交互逻辑:我提方向 → AI反向提问 → 我理清逻辑 → AI精准输出
- 代码质量:产出规范、覆盖全边界的工程化代码,一次成型
- 个人成长:跟着AI锻炼架构思维,逻辑越来越严谨,越用能力越强
AMan有话说
AI从来都不是替你写代码的“打工仔”,而是帮你提升能力、提高效率的“高级顾问”。
我从最开始张口就要答案,改代码改到崩溃,到现在让AI反向提问,代码一次成型,核心就是转变了和AI的交互方式。
收藏这篇!把里面的高阶话术直接存下来,下次用AI写代码直接复制,再也不用让AI瞎写,再也不用改代码改到半夜!
你平时用AI写代码,还有哪些好的使用心得? 欢迎评论区和大家一起交流!