AI辅助编程系统工程的注意事项-程序员从“农耕”走向“魔法”的时代

AI辅助编程系统工程的注意事项-程序员从"农耕"走向"魔法"的时代

目 录

1..... 项目实践依据... 2

  1. 前言:软件工程的范式转移,从"关注过程"到"关注意图"... 4

3..... 需求明确及AI审核:人与AI双向的需求验证... 4

4..... 更需要系统化思维:科学拆分业务单元... 4

5..... 受第三方组件影响:生成代码不一定正确... 5

6..... AI的补丁思维:局部修改可能引入全局问题... 5

7..... 需要Review代码:业务逻辑审核与把控... 5

8..... 更重视系统测试:小模块的bug可能隐藏很深... 6

9..... 最终需要人工验收:人始终是系统的负责人... 6

10... 结束语... 6


1. 项目实践依据

项目实践:基于Ai Coding,20天完成一个基于大模型的医学分析系统:Ai体征分析助手

项目试用:https://www.aineuos.net。微信小程序:Ai体征分析助手。

**  应用系统界面**:

**  项目工程代码** :

**  AI** 应用请求分析

2. 前言:软件工程的范式转移,从"关注过程"到"关注意图"

在传统软件工程中,通过严谨的过程来控制质量:需求分析、详细设计、编码规范、代码审查、测试流程......每一个环节都有明确的文档和检查点。这种"关注过程"的方式,主要是在人力成本高昂时代,最大限度地降低风险

随着AI辅助编程工具的普及,软件工程的底层逻辑正在发生根本性变化。当AI自动生成大量代码时,关注点从"如何写代码"转向"如何表达意图"。开发者不再需要亲手开发每一行代码,而是需要清晰地描述需求、拆解业务、验证结果

**  这种从"** 过程" 到" 意图" 的转变,对系统工程提出了全新的挑战。


3. 需求明确及AI审核:人与AI双向的需求验证

在传统模式下,需求文档(PRD)是人写给人的说明书,难免存在歧义和遗漏。而在AI辅助编程中,需求文档同时成为了AI的"输入"。这就要求需求必须明确、无二义性。

假定需求已经是明确的,仍然需要AI来审核需求。将初步需求输入AI来验证逻辑和细节的合理性,迭代和完善需求。通过这种"人写需求→AI尝试实现→人根据AI反馈修正需求"的循环,可以大幅提升需求的准确性和完整性。

4. 更需要系统化思维:科学拆分业务单元

在AI辅助编程中,开发者必须对业务有深刻的理解,并具备科学拆分功能的能力。定义好模块边界、接口协议、数据流向等,甚至编写好核心的架构骨架,然后让AI在限定的上下文中填充具体实现。系统化思维不再是架构师的专利,而是每个参与AI协作的开发者的基本功。

5. 受第三方组件影响:生成代码不一定正确

AI的训练数据来自海量开源代码,它生成的代码会引用各种第三方库和框架。这带来两个问题:一是引用的库可能已经过时、存在安全漏洞,或者许可证不兼容;二是AI可能错误地使用API,导致功能异常。

尽管可以通过编译,但是不代表不会出现异常提示。也有可能编译后的代码可以运行,但它不一定是最佳的实现方式。

这类问题通常比较容易修正,更换库版本及调整参数,往往就能解决问题。

6. AI的补丁思维:局部修改可能引入全局问题

在与AI交互时,我们常常会针对某个小问题要求AI进行完善,例如针对某个问题进行修正,AI更多的时候会在其他地方"打补丁"来响应指令,为了快速修复一个bug,AI生成了临时方案,这种"补丁思维"容易导致代码逐渐偏离原有设计,并且产生冗余代码。

开发者需要识别这种补丁式增补代码是否合理,最终决定是否要增补代码。

7. 需要Review代码:业务逻辑审核与把控

AI生成的代码必须经过严格的代码审查(Code Review)。这一点与传统开发并无不同,审核代码粒度视业务复杂度影响。

首先,关注逻辑正确性:AI是否理解了你描述的意图?边界条件处理了吗?异常分支覆盖?

其次,要根据业务复杂度决定代码审核粒度。例如针对工业控制需要逐行审核,针对增删改查需要代码块审核。但无论如何,代码审查是不可省略的环节,是AI产出代码质量最后防线。

8. 更重视系统测试:小模块的bug可能隐藏很深

AI辅助编程,测试的重要性不降反升。因为代码生成速度变快,bug的引入速度也可能变快。我们需要更完善的自动化测试套件,包括单元测试、集成测试、端到端测试,以及持续集成流水线,确保每次AI生成的代码都能被快速验证。测试不再是开发完成后的收尾工作,而是与编码并行。

9. 最终需要人工验收:人始终是系统的负责人

人工验收不仅是对功能的确认,更是对非功能需求的检查:性能、安全性、可维护性、用户体验等。AI可能生成一个"能用"的系统,但不一定是"好用""可靠"的系统。

AI是工具,人是决策者,验收不是终点,而是人机协作持续优化的起点。


10. 结束语

AI辅助编程正在重塑软件工程的实践方式,从"会写"到"会用"的转变。


物联网&大数据技术 QQ群:54256083

物联网&大数据项目 QQ群:727664080

QQ:504547114