AI写代码越来越强,但很多程序员反而更容易翻车了

0 阅读6分钟



前几天,我在公司茶水间冲咖啡的时候,产品经理老周突然一脸兴奋地冲过来:“小米,这次 SAAS 平台交易统计模块,要加一个‘站点维度’。”

我当时端着咖啡,脑子里“叮”地一下,因为我太熟悉这种需求了,这玩意儿听起来只有一句话:“给交易统计定时任务加入站点逻辑。”

但实际上,背后往往藏着一串连锁反应,尤其是我们这个统计模块,本身已经跑了很多年,里面有:

  • 当天交易统计
  • 昨天交易统计
  • 近7天统计
  • 近30天统计
  • 各种排行榜
  • 各种聚合数据

一旦改不好,就像你在商场中央空调主机上拧错了一个阀门,整栋楼的人都会开始流汗,而这次,我没像以前一样硬着头皮改,因为这次,我用了:

  • Trae
  • MiniMax

来做 AI 编程协作,但真正让我效率暴涨的,不是 AI 本身,而是我终于意识到:AI 编程里,最值钱的不是“生成代码”,而是“拆问题”。

很多人用 AI 编程,像让新员工直接接管公司财务

我发现现在很多程序员使用 AI 的方式特别像这样,老板说:“把财务系统升级一下。”

然后你转头就对刚入职一天的实习生说:“来,你把整个公司账务系统重构一下。”

离谱吧?但很多人真的是这么用 AI 的,他们会直接甩一句:“帮我把所有交易统计逻辑都改成站点维度。”

于是 AI 开始疯狂输出:

  • 改 SQL
  • 改 DTO
  • 改 Mapper
  • 改 Service
  • 改 Redis Key
  • 改定时任务
  • 改缓存结构
  • 改统计维度

最后改出来几千行,然后你不敢测,你不知道哪里炸,你甚至不知道 AI 到底改了什么。最恐怖的是,一旦有问题你得让 AI 再重新生成,然后新的代码又覆盖旧逻辑,整个项目像一锅被哈士奇翻过的火锅。

后来我突然意识到:这些统计,其实只有“日期”不一样

我开始重新分析需求,然后发现这些报表虽然看起来很多,但本质上它们像一家连锁奶茶店的不同营业报表。比如:

你会发现真正不同的只有“统计时间范围”,而:

  • 聚合逻辑
  • 站点逻辑
  • 订单过滤
  • 金额统计
  • Redis缓存
  • 数据落库

几乎都一样。

这时候我突然意识到这不就是“复制题”吗?既然如此,为什么不先拿一道最简单的题让 AI 做?

于是我决定:先只改“当天统计”

我跟 AI 说:

  • “不要动其他报表。”
  • “只改当天交易统计。”
  • “加入站点维度。”
  • “其他逻辑不要变。”

这一下世界安静了,AI 返回的代码量瞬间少了很多,我开始仔细验证:

  • SQL 对不对
  • group by 对不对
  • Redis key 有没有站点ID
  • 定时任务会不会重复
  • 数据会不会串站点

结果发现还真有问题,AI 在一个聚合逻辑里漏加了 siteId,导致所有站点数据聚合到一起,如果我当时是一口气让 AI 把:

  • 昨天
  • 近7天
  • 近30天

全改了,那这个 bug 会直接复制四份,就像你发现奶茶店的糖浆坏了,但已经倒进了:

  • 珍珠奶茶
  • 杨枝甘露
  • 芋泥波波
  • 冰美式

全部产品线,整个仓库一起炸。

AI 编程最容易踩的坑:错误会“批量繁殖”

后来我越来越觉得AI 最大的问题不是“不会写”,而是它太会复制了,它像一个特别勤奋的流水线工人,你给它一个错误模板,它能给你复制一百遍。

以前程序员手写代码的时候,至少写到第三个模块,你可能突然会发现:“卧槽,好像有问题。”

但 AI 不会,AI 会:

  • 稳定地。
  • 快速地。
  • 大规模地。
  • 把错误扩散。

这就像你让一个机器人厨师做饭,第一盘盐放多了,正常厨师会尝一口:“哎呀坏了。”

但 AI 厨师不会,它会继续复制剩下99盘,而且每盘都一样咸。

所以后来,我总结出了一套 AI 开发“试点原则”

我现在做 AI 编程,特别喜欢“先试点,再扩散”,尤其是:

1. 先改最小模块

比如先改当天统计,不要一次改全量统计

2. 先验证链路

验证:

  • SQL
  • 缓存
  • MQ
  • Redis
  • 定时任务
  • 聚合逻辑

确保业务链路跑通。

3. 再让 AI 横向复制

当“今天统计”验证没问题后,我再跟 AI 说:“参考当天统计逻辑,把昨天、近7天、近30天也同步改造。”,这时候 AI 的成功率会高得离谱,因为它已经有“正确样板”了。

这时候 AI 就像什么?像你给装修师傅先做了一个样板间,后面:

  • 客厅
  • 卧室
  • 次卧

直接照着复制,效率会非常高。

很多人以为 AI 会替代程序员,但实际上 AI 更像“工程放大器”

以前我一直觉得 AI 编程的核心价值是:“自动生成代码。”

但后来我发现真正恐怖的是:AI 会放大你的工程思维,如果你本身:

  • 不会拆需求
  • 不会控制范围
  • 不会验证链路
  • 不会渐进式改造

那 AI 只会让你更快翻车,但如果你本身:

  • 会做灰度
  • 会做试点
  • 会做最小闭环
  • 会控制变量

AI 会让你像开了外挂,以前你一天改一个模块,现在你一天能平推十个。

我现在越来越像“项目总导演”,而不是“码农”

以前写代码像自己搬砖,现在用 AI越来越像工地总包,你不需要亲自搬每块砖,但你必须知道:

  • 哪堵墙先砌
  • 哪根梁不能动
  • 哪个地方容易塌
  • 哪个步骤必须验收

而 AI 更像一支24小时待命的施工队。

  • 你指挥得好,它效率爆炸。
  • 你指挥不好,它一天能给你拆三栋楼。

最后我发现:真正厉害的 AI 开发者,都特别“克制”

很多人用 AI 追求的是“一句话生成整个系统。”,但真正稳定、高效的 AI 开发,反而特别像老练架构师。他们会:

  • 控制改动范围
  • 逐步验证
  • 小步快跑
  • 先做样板
  • 再批量复制

因为 AI 最大的价值从来不是“帮你写代码”,而是帮你把“正确的方法”快速放大,所以现在我越来越喜欢一句话:

  • “不要让 AI 一次性解决所有问题。”
  • “而是先让 AI 正确解决一个问题。”

因为一个正确的样板比一百份错误代码值钱太多了。

END

我是小米,一个喜欢分享技术的31岁程序员大哥哥。如果你喜欢我的文章,欢迎关注我的微信公众号“软件求生”,获取更多技术干货!

好朋友们,我们下篇见~