
最近有个很奇怪的感受。 我手上有个项目,从一开始就是用自然语言指令驱动 AI 来构建的。 最初阶段非常高效我只需要不断描述需求,AI 就能快速生成代码、搭建架构、补全逻辑。开发速度几乎比传统写法快了一倍还不止。
但做到中期、后期后,问题就慢慢浮现出来: 这些代码虽然都是 AI 写的、功能也都能跑,但我对项目的掌控感在不断下降。
现在我只能大致理解每个模块的作用、整体框架的结构。 可要我真的去深入理解那些 AI 生成的实现细节,难度已经不亚于自己重新写一遍。 调试时我通常只会判断问题大概出在哪个环节,然后让 AI 去重点排查。 如果 AI 也查不出来,我才会“亲自下场”,顺藤摸瓜地一点点追踪。
更微妙的是: 有些功能 AI 实在实现不出,我自己手动写了一部分。虽然能跑,但风格和 AI 生成的代码格格不入,仿佛是两种语言、两种思维方式。
项目越完善,我反而越觉得它脱离了我的掌控。 但它又确实能跑、能上线、能迭代于是我也不去多想,只要结果对了就行。
这种感觉就像在管理一个越来越聪明、但不再完全听话的开发助手。 它写的东西我看得懂,但没法真正“拥有”就像一个我主导、但我又没法完全理解的系统。
我很好奇: 有没有人也有这种感觉? 当 AI 开始承担主要开发任务后,我们是不是正在失去“理解代码”的必要性? 或者说,未来的程序员,会不会更像“代码导演”而不是“代码工匠”?
1 sagnitude 48 天前 看别人写的代码也是一样的吧。你写之前可以总结好代码规范让他执行,代码规范先行,之后才是系统设计,模块设计,模块文档,实际实现,测试。 |
2 objcat 48 天前 没有任何一家代码是纯 AI 写的 我觉得还是不太行 |
3 justtokankan 48 天前 老板也不需要看懂代码 |
4 visper 48 天前 你的领导管理的时候,也不知道你写的代码。有问题的时候就找你。 不过对 ai 。可以要求多点。比如完善的注释,说明文档,单元测试。 |
5 INCerry 48 天前 至少生成以后,每次都要 review 下代码吧? |
6 bearbest PRO 做管理而不是做研发 |
7 ZyqAlwaysCool 48 天前 对于不懂的语言框架,我的做法是先熟悉+自己写,再让 ai 来做构建,得保证有能力改;对于熟悉的,让 ai 构建后再 review 一遍代码 |
8 strobber16 48 天前 标题为什么是反而,明明应该是果然 |
9 rebecca554owen 48 天前 每次 review 都要删除一部分代码。 |
10 Cheons 48 天前 via Android 就想像自己升职了 当了管理 |
11 9RWBdC758updU311 48 天前 代码对不懂它的人来说,一直如此 |
12 kneo 48 天前 via Android 又不是你写的项目,看不懂很正常。 |
13 yrom 47 天前 把 AI 当成实习生,而你在带实习生写代码… |
14 Cola98 47 天前 +1 ,每次刚开始用 AI 写效果都会不错,然后慢慢的项目越来越大以后,其实就不可控了,为了减少这种可能性我是编写各种 prd ,然后提前做好设计,有一点做系统设计的感觉,然后把每个模块拆分很细节。同时规范它的写代码风格。不过还是想要人工介入。 |
16 garywill 47 天前 正确的用法是,先让 AI 写,然后一定自己改一遍(甚至重写,对 AI 完全不满意),然后交给 AI 检查有没有潜在错误 |
17 yuntun 47 天前 很有感触 , 对项目陌生了 |
18 greatbody 47 天前 正确的做法是让 AI 完善思路,然后 [自己根据思路定下 API 草稿] 然后让 AI 补充细枝末节,人工审阅后,让 AI 先生成用户故事,人工审核后,让 AI 生成集成测试,检查集成测试的细节,人工审核后让 AI 写代码实现。 |
19 lneoi 47 天前 你这样想,这是你一年前写的代码,你能知道他方方面面细节吗,没办法。但只要是在你掌控之内就没问题 |
20 dengj3355 OP @INCerry @ZyqAlwaysCool @rebecca554owen @irrigate2554 前期会 review 的,而且很好理解,中后期代码越写越多,模块越来越多,有时候这里跳一下那里跳一下,跳半天只是加个变量等等,根本联系不上上下文,所以后期我就统一 keep all 了 |
21 coolmenu 47 天前 你现在升级为项目经理了,不用看懂代码 |
22 Jannok 47 天前 我也有这样的感觉,让 AI 写了一个复杂组件之后,细节我没法完全 cover 到,但是测试也没测出啥问题,只能让不同的 AI 再 review 一遍,表面上的控制力还是降低了很多 |
23 abcbuzhiming 47 天前 不想这样只有一个办法,自己做项目主管,把需求拆解成小模块,只让 AI 完成小模块,然后自己组装,这样能维持自己对项目的把控,你让 AI 全干了,你当然掌控不了它写的东西了 |
24 illiteracy0001 47 天前 我是觉得如果代码后续不会继续迭代维护完全用 AI 生成是高效且好用的,但是需要不停迭代的话还是把控整体的实现方案,然后让 AI 填充细节和重复的代码 |