AI “自动驾驶” 的使用分享

AI "自动驾驶" 的使用分享

一、开场:从 "AI 善后工程师" 说起

大家有没有遇到过这样的情况:

满怀期待地让 AI 帮你写代码,结果跑出来一堆问题,然后你花了大量时间去修改、调试、善后。最后发现,还不如自己写来得快。

这时候,你就变成了 "AI 善后工程师"

我自己长时间使用以来的一些思考,就是如何跳出这个困境,让 AI 真正成为你的效率倍增器,而不是麻烦制造者。


二、问题根源:模糊的需求,模糊的结果

让我们看一个真实的对比案例。

模糊版本

复制代码
我想加个导出 Excel 的功能

结果会怎样?

虽然 AI 和 Spec 也能做,但这个跑出来的结果可想而知。AI 会做大量假设:

  • 导出什么数据?哪些字段?
  • 在哪个页面?什么时候触发?
  • 文件格式怎样?命名规则?
  • 有没有数据量限制?

不断的和 AI 拉扯"需求",然后 AI 也一直被打断需要你不断的 "澄清" 事实。

AI 执行完成后,你发现 AI 生成的代码需要你不断的修改、补充、调整,就变成了 "AI 善后工程师"

清晰版本

diff 复制代码
我想在顾问模块的对账单列表页添加导出 Excel 功能 

Ai 工作流:.windsurf\workflows\add-export-function.md
// 这是 "项目" 中定义的 AI 工作流,可以明确的给 AI 提供上下文信息 

业务背景:
业务每月需要将对账单数据导出给组长,现在只能手动复制,容易出错
 
功能描述:
- 在列表页顶部添加"导出 Excel"按钮
- 导出当前筛选条件下的所有数据(不分页)
- 导出字段:账单号、提交时间、状态...
- 文件名格式:x月对账单_YYYYMMDD.xlsx 

用户场景:
- 场景1:用户筛选了某个月份的数据,点击导出,得到该月份的 Excel 文件
- 场景2:用户未筛选,点击导出,得到所有数据的 Excel 文件 

技术偏好:
- 使用项目中已有的 exceljs 库 // 如果没有现成组件,可以明确给 AI
- 导出限制:最多 10000 条数据,超过提示分批导出

结果?

AI 能够一次性生成 70-80% 可用的代码,你只需要做少量调整和验证。


三、核心方法:如何跳出 "AI 善后工程师"?

1. 5W1H 原则

这是产品思维的基础方法,同样适用于和 AI 沟通:

  • Why(为什么):业务背景、痛点
  • What(做什么):核心功能
  • Who(谁用):目标用户角色
  • Where(在哪):哪个模块/页面
  • When(什么时候):触发时机
  • How(怎么做):技术偏好(可选)

2. 明确边界

告诉 AI 什么要做,什么不要做

复制代码
做:简单的关键字搜索
不做:复杂的高级筛选、搜索历史

这能避免 AI 过度设计,把简单问题复杂化。

3. 提供具体场景

不要说 "用户字段可以搜索",而是

arduino 复制代码
场景:
1. 数据列表中,用户输入"张三",点击搜索,看到搜索的结果。
2. 点击 "张三" 的数据项ID,跳转到详情页。

具体的场景描述能让 AI 理解完整的用户操作流程。

4. 说明优先级(如果有多个功能)

复制代码
P0(必须):基础搜索功能
P1(重要):搜索结果高亮
P2(可选):搜索历史记录

这样 AI 知道先做什么,避免在次要功能上浪费时间。

现在 AI "分析" 能力强了不少,自然也语言可以工作,但如果你掌握一些 "提示技巧" ,确实能让 AI 生成更准确的提案,减少来回澄清的次数,提高效率


四、理性认知:为什么说迷信 "AI 全自动" 能力是不好的做法?

我们应该追求的是 "效率增益" ,而不是 "一次完美完成" 的代码。

关键是考虑显著的实现上的时间节省。

AI 最适合的场景:

  • 高重复性/模板化:如 CRUD、DTO转换、前端字段映射
  • 高耗时:纯手工需要超过 2-3 小时的繁琐任务
  • 低风险:非核心生产逻辑
  • 易于验证:容易判断对错,修复成本低

AI 不适合的场景:

  • 核心业务逻辑(需要深度理解业务)
  • 复杂的架构设计决策
  • 需要大量上下文的重构工作
  • 安全敏感的代码(需要人工深度审查)

五、最佳实践总结

好的做法

  • 明确定义任务范围 - 用 5W1H 描述清楚
  • 聚焦 AI 擅长场景 - 重复性、模板化任务
  • 鼓励先计划再编码 - 使用 OpenSpec 等工作流
  • 提供项目上下文指令 - 通过工作流文件、项目文档
  • 保留人工复核环节 - AI 生成,人工审查
  • 充分利用自动测试 - 用测试验证 AI 代码的正确性

不好的做法

  • 上下文臃肿,不加取舍 - 把整个项目塞给 AI
  • 不写测试直接上 - 无法验证 AI 代码质量
  • 无急停,任其失控 - AI 跑偏了也不及时纠正
  • 忽视 AI 给出的安全扫描 - AI 提示的安全问题不重视
  • 迷信 AI 全自动能力 - 期望 AI 解决所有问题
  • AI 代码不整理沉淀 - 生成的代码不规范化,技术债累积

六、结语:AI 是副驾驶,你是司机

AI "自动驾驶" 不是让你做甩手掌柜,而是

  • 你负责方向:明确需求、定义边界、把握质量
  • AI 负责执行:快速生成代码、处理重复性工作
  • 协同提效:在合适的场景下,发挥各自优势

记住:好的需求描述 = 好的 AI 输出

当你从 "AI 善后工程师" 变成 "AI 驾驶员" 时,你会发现效率提升不止一倍。

人机的高效协同,与 AI 结队编程应是当下最优解。、


版权声明:

本文版权属于作者 林小帅,未经授权不得转载及二次修改。

转载或合作请在下方留言及联系方式。

相关推荐
三门1 小时前
web接入扣子私有化智能体
前端
起名时在学Aiifox1 小时前
深入解析 Electron 打包中的 EPERM: operation not permitted 错误
前端·javascript·electron
游戏开发爱好者81 小时前
Fiddler抓包工具完整教程 HTTPHTTPS抓包、代理配置与API调试实战技巧(开发者进阶指南)
前端·测试工具·ios·小程序·fiddler·uni-app·webview
华仔啊2 小时前
20个CSS实用技巧,10分钟从小白变大神!
前端·css
起名时在学Aiifox2 小时前
Vue3 + Element Plus 表格排序实战:基于状态字段的智能排序方案
前端·javascript·vue.js·element plus
再吃一根胡萝卜2 小时前
从 Element UI 到 Element Plus:el-table 大数据量性能为何下降了?
前端
转转技术团队2 小时前
转转UI自动化走查方案探索
前端
yzx9910132 小时前
基于Flask的智能语音增强系统模拟
前端·javascript·html
青衫码上行2 小时前
【Java Web学习 | 第14篇】JavaScript(8) -正则表达式
java·前端·javascript·学习·正则表达式