AI生成代码加速代码屎山噩梦?

简介: 如今,许多程序员选择使用AI来辅助编程,但是随着AI软件开发的快速普及,有关代码质量的担忧越发凸显。

如今,许多程序员选择使用AI来辅助编程,但是随着AI软件开发的快速普及,有关代码质量的担忧越发凸显。长期从事代码研究的Adam Tornhill曾表示,AI辅助编程所面临的主要挑战是,它很容易生成大量原本无需编写的代码。

根据最新的研究,结果确实令人担忧。除了代码反复修改后被删除的问题,重复代码比例也变得越来越严重。

GitHub Copilot 自推出 beta 版以来,迅速席卷了 AI 编码领域。根据公司首席执行官 Thomas Dohmke 的介绍,该软件目前已经吸引了超过一百万付费订阅开发者,有效提高了开发任务的速度达到55%。此外,在启用Copilot的文件中,有46%的代码量是由人工智能生成的。

根据开发者分析公司GitClear的研究,在对1.5亿行已更改代码进行数据收集后发现,三分之二的数据来自私营企业以匿名方式共享的数据,而三分之一的数据则来自谷歌、Facebook和微软等技术大厂的开源项目。

该研究的重点是对经过修改、更新、删除、复制和移动的代码进行处理,同时排除掉GitClear事先定义的“噪音”,比如同一段代码被提交到多个分支、空行和其他没有意义的代码行。
然而,GitClear 的研究集中在代码质量而非代码数量,并且发现 AI 助手主要提供“代码添加建议”,但很少提供代码更新、移动或删除建议。

要精确衡量代码质量并不容易。研究者们也确实发现了一些变化趋势,显示代码的添加、删除、更新和复制/粘贴量都有显著增加,但是代码移动的比例则有所减少。他们还发现代码重复率大幅增加,从2020年的3.3%提高到目前的7.1%。

通常来说,代码移动是开发者重构代码时的一个重要标准。具体来说,就是要在改善代码设计和结构的同时,确保不会改变原有的功能。

研究人员初步推测这一趋势或许与 AI 编码技术的迅速普及有关,但具体原因仍需进一步验证。他们严厉批评了过度使用复制/粘贴代码的负面影响,并指出:“这种对 AI 生成代码的盲目使用,将对代码的长期可维护性产生灾难性的影响。”

然而,过度依赖复制粘贴并不是一个新的问题。开发人员之所以这样做,可能是因为无需调整和重用现有代码,直接复制粘贴更快捷省事。或者可能是由于多个开发者之间的沟通不畅,或者过度从开发示例和编码问答网站上抄袭内容。

GitClear的研究人员并没有具体讨论如何解决所发现的这些问题,而是转向了"后续研究问题"。然而,他们也建议工程部门的领导者应该"监督提交数据,并考虑其对未来产品维护所带来的影响"。

这项研究可能会在一定程度上安抚那些担心被人工智能工具取代的开发者们。代码分析公司CodeScene最近进行的一项人工智能代码重构研究也得出了结论,“在编码环境中,人工智能远远不能替代人类。”

但可以确定的是,AI 编码助手绝对不会消失,相反它会像所有新工具一样不断进行改进,开发者会学习如何优化它的思路,提高它的使用效果。实际上,现在的开发者们已经开始认识到代码质量的重要性。根据GitHub和Wakefield Research的调查报告显示,在被调查的程序员中,当被问及“在积极使用人工智能时,应该根据哪些指标进行评估?”时,“代码质量”被认为是最重要的问题。

最近的研究显示,代码质量对业务产生的负面影响不可忽视。根据这些研究,通常情况下,由于技术债务和糟糕的代码,公司的开发人员平均浪费了23%~42%的时间。这一结果足以引起我们的关注。另外,有关软件开发人员由于技术债务而导致的生产力损失的研究还指出,开发人员经常不得不引入新的技术债务,因为公司一直在通过牺牲代码质量来换取短期的收益,如新增功能等。

因此,提高代码的可读性和可维护性,注重代码的健壮性和性能优化,确保代码的安全性。代码遵循如命名规范、注释规范、代码风格统一等规范和最佳实践,依然是开发人员需要攻克的课题。而为了达到这些要求,开发人员需要具备扎实的编码能力、良好的团队合作精神以及使用正确的AI编码助手,从而辅助自己高效实现高质量代码输出。

以飞算推出的专注AI生成Java函数的FuncGPT(慧函数)为例,集成多年的编程现场大数据,经过数百万行代码训练,帮助开发人员实现通过自然语言即可实时生成高质量、高可读性的Java函数代码。生成代码可直接复制到IDEA。在代码质量方面,由于FuncGPT(慧函数)具备强大的自然语言处理能力,能够准确理解用户对函数的描述和要求,降低了开发沟通成本和理解难度,同时因为经过代码编写最佳实践和大规模机器联合训练,减少了由于人的疏忽和语法错误引起的Bug,因此生成的代码质量有保证。多次内部测试显示,相较市面上ChatGPT等大模型,FuncGPT(慧函数)生成的代码质量更高,更便于开发人员直接使用。

目前,企业引入人工智能辅助工具来实现“降本增效”是可以理解的,但我们需要谨慎运用,充分发挥优势、避免劣势。让 AI 辅助编程更好地帮助开发者需要各方共同的努力。

相关文章
|
5月前
|
数据采集 人工智能 监控
零代码改造!LoongSuite AI 采集套件观测实战
在 AI 时代,随着模型和应用侧的快速演化,对于推理过程,成本和性能显得尤为重要,而端到端的 AI 可观测是其中至关重要的一环。本文将介绍端到端 AI 可观测的基本概念与痛点,并通过阿里云可观测团队最新开源的 AI 采集套件 LoongSuite Agent 来对大模型应用进行全链路可观测以解决这些痛点。帮助客户无侵入,低成本地进行全链路的大模型可观测。
558 62
零代码改造!LoongSuite AI 采集套件观测实战
|
5月前
|
人工智能 自然语言处理 IDE
模型微调不再被代码难住!PAI和Qwen3-Coder加速AI开发新体验
通义千问 AI 编程大模型 Qwen3-Coder 正式开源,阿里云人工智能平台 PAI 支持云上一键部署 Qwen3-Coder 模型,并可在交互式建模环境中使用 Qwen3-Coder 模型。
1044 109
|
4月前
|
人工智能 IDE Java
AI Coding实践:CodeFuse + prompt 从系分到代码
在蚂蚁国际信贷业务系统建设过程中,技术团队始终面临双重考验:一方面需应对日益加速的需求迭代周期,满足严苛的代码质量规范与金融安全合规要求;另一方面,跨地域研发团队的协同效率与代码标准统一性,在传统开发模式下逐渐显现瓶颈。为突破效率制约、提升交付质量,我们积极探索人工智能辅助代码生成技术(AI Coding)的应用实践。本文基于蚂蚁国际信贷技术团队近期的实际项目经验,梳理AI辅助开发在金融级系统快速迭代场景中的实施要点并分享阶段性实践心得。
1034 25
AI Coding实践:CodeFuse + prompt 从系分到代码
|
4月前
|
人工智能 自然语言处理 安全
氛围编程陷阱:为什么AI生成代码正在制造大量"伪开发者"
AI兴起催生“氛围编程”——用自然语言生成代码,看似高效实则陷阱。它让人跳过编程基本功,沦为只会提示、不懂原理的“中间商”。真实案例显示,此类项目易崩溃、难维护,安全漏洞频出。AI是技能倍增器,非替代品;真正强大的开发者,永远是那些基础扎实、能独立解决问题的人。
438 11
氛围编程陷阱:为什么AI生成代码正在制造大量"伪开发者"
|
4月前
|
人工智能 机器人 测试技术
AI写的代码为何金玉其外败絮其中
本文分析AI编码看着好看其实很烂的现象、原因,探索行之有效的的解决方案。并从理论上延伸到如何更好的与AI协作的方式上。
203 3
|
5月前
|
人工智能 测试技术 开发工具
如何将 AI 代码采纳率从30%提升到80%?
AI编码采纳率低的根本原因在于人类期望其独立完成模糊需求,本文提出了解决之道,讲解如何通过结构化文档和任务拆解提高AI的基础可靠性。
1398 24
|
5月前
|
人工智能 数据可视化 定位技术
不会编程也能体验的 AI 魔法,外滩大会代码原生地等你解锁
不会编程也能体验的 AI 魔法,外滩大会代码原生地等你解锁
496 39
|
5月前
|
数据采集 人工智能 监控
零代码改造!LoongSuite AI 采集套件观测实战
本文介绍了AI应用生态的快速发展及可观测性的重要性,重点阐述了LLM(大语言模型)应用的复杂性对全链路监控的需求。LoongSuite作为开源的可观测性数据采集套件,提供无侵入式埋点、全栈观测与多语言支持,助力AI应用实现从端侧到模型层的端到端链路追踪,提升系统稳定性与运维效率。
340 1
|
4月前
|
人工智能 监控 Java
零代码改造 + 全链路追踪!Spring AI 最新可观测性详细解读
Spring AI Alibaba 通过集成 OpenTelemetry 实现可观测性,支持框架原生和无侵入探针两种方式。原生方案依赖 Micrometer 自动埋点,适用于快速接入;无侵入探针基于 LoongSuite 商业版,无需修改代码即可采集标准 OTLP 数据,解决了原生方案扩展性差、调用链易断链等问题。未来将开源无侵入探针方案,整合至 AgentScope Studio,并进一步增强多 Agent 场景下的观测能力。
2201 69
|
4月前
|
人工智能 安全 开发工具
C3仓库AI代码门禁通用实践:基于Qwen3-Coder+RAG的代码评审
本文介绍基于Qwen3-Coder、RAG与Iflow在C3级代码仓库落地LLM代码评审的实践,实现AI辅助人工评审。通过CI流水线自动触发,结合私域知识库与生产代码同仓管理,已成功拦截数十次高危缺陷,显著提升评审效率与质量,具备向各类代码门禁平台复用推广的价值。(239字)
967 24