乐于分享
好东西不私藏

用了一年 AI 编程工具,我说几句大实话

用了一年 AI 编程工具,我说几句大实话

一年前,我第一次用 AI 写代码,兴奋得像个拿到新玩具的小孩。一年后,我关掉了 AI 补全,重新开始自己敲每一行代码。这不是倒退,这是我用了一整年之后,做出的最理性的决定。

一年前的我:哇,这也太爽了

还记得第一次用 AI 编程工具的感觉吗?

你敲个注释 // 创建一个用户登录接口,回车,唰——50 行代码自动补全出来了。参数校验、数据库查询、JWT 签名、错误处理,全给你写好了。

我当时的第一反应是:这玩意儿要是早出五年,我能少掉多少头发。

于是我开始疯狂依赖它:

    写新功能?先让 AI 生成框架代码遇到 Bug?把报错信息扔给 AI写单元测试?AI 写的比我快 10 倍看不懂的代码?让 AI 解释

    前三个月,我的”生产力”确实翻倍了。以前一天写 200 行代码,现在一天能”产出” 1000 行。

    注意我用了”产出”这个词。后面你会知道为什么。

    三个月后的我:好像哪里不对

    问题是从第四个月开始出现的。

    第一个信号:我不看文档了。

    以前遇到不熟悉的 API,我会去翻官方文档,理解参数含义、边界条件、最佳实践。现在?直接问 AI:”这个接口怎么用?”AI 给你一段代码,能用就行。

    直到有一天,AI 给我写了一段用了已废弃 API 的代码,在生产环境炸了。我去查文档才发现,这个 API 两年前就标记为 deprecated 了。AI 不知道,因为它训练数据截止日期之后的事它不了解。

    第二个信号:我不思考架构了。

    以前写一个功能,我会先想:数据结构怎么设计?接口怎么定义?异常怎么处理?扩展性怎么保证?

    现在?直接把需求扔给 AI,它给你一个”能跑”的方案。能用,但——

      没有考虑并发场景没有考虑数据一致性没有考虑向后兼容没有考虑团队其他人的代码风格

      代码是”能跑”了,但像一栋没有打地基的房子——看着挺好,地震一来就塌。

      第三个信号:我连报错都不自己看了。

      以前看到一个报错,我会顺藤摸瓜,理解错误的根本原因,学到新东西。现在?复制报错信息 → 粘贴给 AI → 得到修复方案 → 粘贴回代码 → 跑通了。

      问题解决了吗?解决了。我学到东西了吗?没有。

      同样的错误出现第二次,我还是得问 AI。因为我根本没理解第一次为什么错。

      半年后的我:我变懒了,而且变笨了

      这不是错觉。

      我有一个很直观的衡量标准:面试题。

      半年前,一道中等难度的算法题,我 20 分钟能写出来。半年后,同样的题目,我盯着屏幕发了 10 分钟呆,脑子里一片空白。

      不是因为我忘了算法,而是因为我的大脑已经习惯了”不思考”——有 AI 帮我想,我为什么要自己想?

      这让我想起一个经典的心理学实验:

      把两组老鼠放进迷宫。A 组每天自己找路,B 组有

      人带路。两周后,A 组能快速通过迷宫,B 组完全记不住路线。

      AI 编程工具就像那个”带路人”。你跟着它走,确实快,但你永远记不住路。

      一年后的我:找到了平衡点

      我并没有放弃 AI 编程工具。但我重新定义了它在我工作中的角色:

      AI 是”助手”,不是”代笔”

      以前:让 AI 写代码,我负责粘贴。

      现在:我自己写代码,遇到不确定的地方问 AI。

      区别在于:谁在思考

      我自己写代码的时候,每写一行都在思考:为什么要这样写?有没有更好的方式?边界情况考虑了吗?这些思考过程,才是程序员真正的价值。

      AI 是”校对员”,不是”作者”

      写完一段代码后,我会让 AI 帮我 review:

      请审查以下代码,重点关注:1. 是否有潜在的安全问题 2. 是否有性能优化的空间 3. 边界情况是否都处理了4. 是否符合 Python 最佳实践

      AI 作为”第二双眼睛”来检查我的代码,这个用法非常有价值。

      AI 是”搜索引擎”,不是”答案生成器”

      遇到不懂的问题,我不会再问 AI”这个怎么实现”。而是问:

      这个问题的常见解决方案有哪些?各自的优缺点是什么?

      让 AI 给你方向,而不是答案。然后你自己去查文档、写代码、做决策。

      给正在用 AI 编程工具的同行 3 条建议

      1. 每天至少有一小时,关掉 AI 自己写代码

      就像健身一样,大脑也需要”锻炼”。如果你每天都让 AI 代劳,你的独立思考能力会退化得比你想的快。

      2. AI 给的代码,一定要逐行看懂再提交

      不要因为”能跑”就直接用。AI 不了解你的项目上下文、业务逻辑、团队规范。它给的代码可能是”正确的”,但不一定是”合适的”。

      3. 把 AI 当作 junior 开发者,而不是 senior

      你会把核心模块交给一个刚入职的 junior 吗?不会。AI 也是一样——它写的代码需要你 review,它给的方案需要你判断,它做的决策需要你负责。

      写在最后

      AI 编程工具是过去十年最好的开发者工具之一。它让写代码变得更快、更高效、更低门槛。

      但它也是一个陷阱——让你误以为”快”就是”好”,”能跑”就是”对”。

      代码的世界里,真正值钱的从来不是”写了多少行”,而是”为什么这样写”。

      AI 可以帮你写代码,但它不能帮你思考。

      而思考,才是程序员这个职业存在的意义。

      技术的尽头是人文,代码的背后是生活。一个程序员的自留地。