Technical Leader's Dilemma
搜索文档
“10倍速度,0倍理解?”AI代写代码的那些坑
36氪· 2025-09-29 16:18
AI编程助手的效率悖论 - AI编程助手能在几秒钟内生成数百行代码,但写代码只是软件开发生命周期中的一小部分 [1] - 实际软件开发中,理解需求、设计架构、测试验证和团队协作等环节占据主要精力,AI的介入使这些环节既更快也更容易出问题 [1] - 营销宣传称AI编程能使编码速度提升10倍,但现实中开发者交付可用软件时的效率提升仅为10%左右 [3] AI编程带来的新挑战 - AI生成代码采用“先写代码,再去理解”的模式,导致开发者需花费更多时间事后理解AI生成的代码 [2] - AI快速生成有趣简单的代码部分,而将繁琐不讨喜的工作留给人类,如测试、清理重复代码、写文档和部署运维 [5] - 开发者真正用于写代码的时间反而减少,更多时间花在“善后”工作上 [5] 技术负责人的管理困境 - 技术负责人面临“公平分工”与“自己兜底”的两难选择,前者利于团队成长但可能拖慢进度,后者提升短期交付速度但损害长期发展 [7] - 经验和知识过度集中在技术负责人身上会导致团队脆弱、支持难度加大,最终引发负责人倦怠或离职 [9] - 真正的解决方案是找到平衡点,通过合理团队实践让每位工程师在可控框架内工作,减少返工并提升协作 [11] AI作为“超高速初级工程师”的特性 - AI编程助手可被视为“超高速的初级工程师”,其生成代码速度远超人类新人,但不会真正学习成长 [14] - 早期大模型因bug多、易胡编导致整体交付慢,如今模型更智能,“一次写对”几率提升,但距离资深工程师水平仍有差距 [14] - 对待AI有两种用法:遵循最佳实践的可持续开发,或牺牲理解换取速度的“Vibe coding”,后者长期必然失败 [14] 人机协同的最佳实践 - 需建立新工程实践将AI原始速度转化为可持续交付能力,工程师需当好“神速新人”的技术负责人,提供结构、标准和流程 [18] - AI可融入开发生命周期每个阶段,如需求分析、模块化设计、测试驱动开发、编码规范和监控分析 [20][23] - 通过模块化架构控制上下文范围,结合测试驱动开发和团队编码规范,可提升代码可理解性和可维护性 [23] AI编程的适用场景与局限 - “Vibe coding”模式仅适用于小项目或一次性原型开发,这类应用简单到可由AI独立完成 [17] - 复杂软件系统需要人类与AI团队协同合作,需专门指导手册来实现高效交付 [17] - 只要认识到写代码只是软件交付的一部分,就能避免“AI编程陷阱”,真正放大能力打造高效可扩展软件 [21]