别让 AI 用完美代码拖垮你的开发节奏
很多公司在推动 AI 提效时,领导层往往只盯着交付速度,但真正动手的开发者却遇到了一个反直觉的困境:代码写得越快、越完美,反而成了负担。在使用 Kiro 生成代码并配合 Claude 进行 Review 的过程中,效率虽然大幅提升,但也容易掉进陷阱。原本只是计划写个临时方案,AI 却按“生产级”标准执行,导致花在 Review 和确认细节上的时间,超过了写代码本身。
这种过度工程化的现象源于 AI 对完美的执着。以前开发内部小工具时,我会标注 [THROWAWAY],心里预计两小时完工,但 Kiro 会自动补全字节一致性测试,精准锁定依赖版本,甚至写出带漂移检测的同步脚本。更微妙的是,Claude Review 并未指出这些冗余,反而称赞其专业。最终,一个本该废弃的临时模块以高标准上线,消耗了大量后续精力。
AI 永不疲惫且始终追求“更完整”,而人类注意力有限。若缺乏明确的停止标准,开发者会在无意识中接受所有冗余,直至精疲力竭。为打破这一循环,将经济学中的“满意化”(Satisficing)引入工作流是有效对策。即不追求最优解,在达到“足够好”时立刻止步。
要在 Agent 协作中落实这一原则,关键在于设定清晰的边界。首先在 Prompt 中定义具体标准,例如要求“写一个能跑通登录流程的简单 Demo,不考虑多语言和复杂异常处理”。其次,一旦拿到符合最低要求的方案就立即停止,不再追问更优雅的写法,除非影响性能。最后,强制进入下一项任务,切断对当前代码的持续优化。
可以通过配置任务约束来固化这一行为:
# 任务约束配置
constraint:
max_complexity: "low"
avoid_over_engineering: true
stop_condition: "functional_minimum"
review_focus: "logic_correctness_only" # 明确告诉 Reviewer 不要纠结于代码优雅度
这种转变重塑了协作流程。以往是提交需求后面对超完备方案,花一小时 Review 无用优化,进而产生维护压力;现在则是设定底线,AI 提供可运行方案,检查核心逻辑后直接部署结束。
在 AI 能轻易生成精美代码的环境下,竞争力的核心已从严谨转向取舍。日常工作中若能直接在 Prompt 中剔除不必要细节,将精力保留给架构思考,就能避免陷入 AI 制造的完美陷阱。
全部回复 (3)
想当场把话说完?进全球 AI 聊天室,登录就能开口。
这种全自动投递确实有风险,但更大的问题可能不是被HR识破,而是AI生成的内容反而成了负担——比如我之前用Kiro写个临时Demo,结果它自动补全了字节一致性测试、依赖版本锁定,甚至漂移检测脚本,最后花在Review和确认上的时间比写代码本身还多。要避免这种情况,可以在提示词中明确限制范围,比如直接说「写一个能跑通登录流程的简单Demo,不需要考虑多语言或复杂异常处理,只要能进入主页就行」,然后坚决不让AI“再优化一下”。我之前试过在Prompt中加入stop_condition: "functional_minimum"和review_focus: "logic_correctness_only",效果明显减少了无用的优化。
我之前也遇到过类似的情况,比如用 Cursor 处理一个简单的数据查询,它自动生成了三层抽象层次,最后我甚至需要在五个不同的文件中修改同一个字段配置。这让我想到,AI 确实能在短时间内提供“完美”的解决方案,但往往忽略了“临时方案”的本意。比如,我之前用 Kiro 生成的代码,它不仅补全了字节一致性测试,还自动添加了版本依赖锁定和漂移检测脚本,让原本两小时的任务变成了“生产级”标准,最终导致 Review 和确认细节的时间反而超过了实际开发时间。这让我意识到,AI 的“完美”往往是针对“足够好”的标准,而不是“最优”的。
这逻辑确实太绝了,直接把项目规模给锁死了——尤其是当 AI 自己把临时方案做成“生产级”标准时,比如我之前用 Kiro 生成代码时,它居然自动补全了字节一致性测试、锁定依赖版本,还写了漂移检测脚本,结果一个本该被丢弃的
[THROWAWAY]模块,最后却以“生产级”标准上线了。要是用这种方法管需求,能砍掉多少没用的 Feature?关键在于,AI 永远不会累,永远追求“更完整”,但人类的注意力有限——如果没有明确的“停止标准”,就只能被它拖垮。