大家好,我是知了,一名程序员,曾负责过几亿用户的后端系统架构,目前在尝试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​" :

Leave a Reply

Your email address will not be published. Required fields are marked *

本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。

最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或联络我们。

对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。

如果您已经成功付款但是网站没有弹出成功提示,请联系站长提供付款信息为您处理

源码素材属于虚拟商品,具有可复制性,可传播性,一旦授予,不接受任何形式的退款、换货要求。请您在购买获取之前确认好 是您所需要的资源