大家好,我是知了,一名程序员,曾负责过几亿用户的后端系统架构,目前在尝试AI编程,以下这篇文章是我们团队两个多月的企业级AI编程的尝试。
阶段一:AI编程需求验证
背景:应用是基于SpringCloud的微服务架构,核心微服务(应用)涉及5个,整个应用的发展历程5年以上,整体代码质量风格不统一
前两个月,我们针对公司的某个项目,开展了AI辅助开发的探索性实践,以评估其在项目开发中的适用性和效率提升潜力。为了验证可行性,我们选取了多个实际需求进行测试评估,其中具有代表性的是两个需求:
复杂需求:基于老的业务逻辑优化的需求
简单需求:一个比较独立的新业务模块
测试下来两个需求的特点和效果:
上面的验证工具层面分别使用了Cursor+Claude4,Cline+Qwen3 Code;总体看来Cursor+Claude4生成代码效果最好;
关键结论:
简单需求:AI辅助在代码生成阶段优势明显,但设计文档准备时间抵消部分效率提升。
复杂需求:业务逻辑复杂导致设计阶段耗时增加,AI辅助可能无法显著缩短总时长,甚至因上下文准备而效率更低。
适用场景:AI更适合功能明确、逻辑清晰的增量开发,而非强依赖业务知识的复杂流程重构。
上下文准备耗时: 为AI提供充足、准确的上下文信息(如数据模型、依赖服务、通用组件等)所花费的时间,远超过实际的代码生成时间。
规范需求文档: 采用特定格式和规范编写原始需求文档,有助于提升AI生成设计方案的准确性。
控制文件规模: 对于大型源文件(建议单文件控制在1000行以内),优先考虑进行重构(例如利用AI辅助实现单一职责),再进行功能修改,效果更佳。
分阶段实施与纠偏: 现阶段技术下,直接从原始需求一步到位生成最终业务代码可行性低。需分解为多个阶段(如需求梳理、方案时间、代码生成),在每个阶段进行人工确认和纠偏,逐步增加产出物的确定性。
阶段二:AI编程流程化&产品化
经过阶段一的探索,虽然整体效果不太理想,但也基本确认了AI辅助开发的可行性,同时还形成了一套研发流程和配套的文档规范。
AI辅助研发流程

这套流程旨在解决AI辅助开发中的两个核心问题。
我们内部讨论时,有同事曾提出疑问:为什么不直接将原始需求投喂给AI,一步生成最终代码?为什么要拆分为多个阶段?原因在于,我们需要解决以下两个关键制约:
1、解决AI输出的不确定性,保证过程可控
从模糊的业务需求到精确的业务代码,本质上是一个逐步消除不确定性的过程。如果将这个过程完全交给AI,就如同一个黑盒,产出结果往往不可控。
我们将研发过程分解为需求梳理、方案设计、代码开发三个阶段。这种方式有两点好处:
分阶段锁定成果:每个阶段的输出都由人工进行评审和确认。例如,只有在设计方案通过评审后,才会进入代码开发阶段。这保证了下一阶段的输入是准确可靠的,避免了在错误的方向上浪费精力。
明确人工介入节点:每个阶段都由经验丰富的工程师进行纠偏和决策。这确保了AI的产出始终在正确的轨道上,最终交付的代码质量才能得到保障。
2、解决AI上下文的局限性,实现知识精准注入
目前的大语言模型,其“记忆”(即上下文窗口)是有限的,无法一次性理解项目的所有背景信息。将全部文档一次性投喂,效果往往不佳。
我们的分阶段流程,本质上是为AI在不同阶段“减负”,让它能专注处理当前任务最核心的信息:
需求梳理阶段:AI的核心任务是理解“做什么”。此时,我们主要向其提供业务相关的知识,如数据模型、核心功能,帮助它准确理解功能目标。
方案设计阶段:AI的核心任务是规划“怎么做”。此时,我们主要提供技术架构文档,帮助它设计出符合系统现状的技术方案。
代码开发阶段:AI的核心任务是“写代码”。此时,我们向其提供已经评审通过的设计方案和团队的编码规范,确保生成的代码能够直接使用。
为了更好的阅读体验,来飞书看吧:
https://ba3cyh4w3d7.feishu.cn/docx/VbHzdMVMSohNU4xfhp3ces9rnze
Comments on "企业级AI编程实践总结01" :