人工智能 频道

AI辅助编程工具仅满足部分场景需要,寄希望于未来发展

  【ITPUB专项调查】

  当AI进入iPhone时刻,开发者终于可以抓住这十年不遇的新机遇,借助AI辅助编程工具,全面提升效率,这也是很多人曾畅享的代码革命新未来。但事实是这样吗?当大量AI辅助编程工具迎面扑来?开发者的态度是什么?是否对实际工作产生了影响?

  为了解AI辅助编程工具真实应用现状,ITPUB社区在今年9月份发起专项调查。本次调查一对一发出去500份问卷,收回382份(以下数据均来自此次调研),可见开发者十分关注AI辅助编程工具的使用情况。

  参与调研人群大部分为信息技术从业者,涉及信息技术总监、信息经理、产品总监、普通程序员等,另外还有少量DBA、CEO、CTO、高级副总裁等,这些人来自金融(银行、保险、证券)、电信、互联网、医疗、科研、高校、软件开发及信息技术企业等各个行业。

  本次调查亮点:

  1、专业开发者为了提升开发效率,试用过各种主流的AI辅助编程工具。ChatGPT、GitHub Copilot是中国开发者重要试用对象,其次是Amazon CodeWhisperer 和OpenAI Codex。

  2、很多开发者因为环境不同,AI辅助编程工具也不一样,大家各有自己的偏好。部分企业还会自研工具,提升开发效率。

  3、AI辅助编程工具的成熟度和质量是最大槽点,52%的开发者认为,仅能满足部分场景需要,距离实际应用还差得很远,准确率、理解率和安全性有待提高。

  4、在现代化开发环境下,AI辅助工具将成为标配。64%的开发者认为,AI工具可以提高效率,能自动化执行繁琐任务。有94%的开发者表示,会持续进行AI相关工具的使用。

  开发人员愿意使用AI辅助编程工具吗?

  ITPUB发现,大多数人都试用过AI工具,有75%的开发者试用了AI辅助编程工具。其中,有76%的开发者试用了ChatGPT,其次是GitHub Copilot(28%)、OpenAI Codex(11%),再然后是Amazon CodeWhisperer 和OpenAI Codex,开发者各占6%,问心一言为4%,通义千问和科大讯飞星火均是1%。

  除了我们熟悉的AI工具,很多开发者都有自己的偏好,比如:使用Cursor、fastgpt、bing new、claude 、DevChat 、Iflycode、Comate、 bito 、Chat2DB、 grace以及企业自研工具。

  很多开发者都不只试用过一个AI工具,希望找到各方面都相对完善的应用。数据显示,有10%的开发者试用过三个以上AI辅助编程工具。

  哪些应用场景更需要AI?

  当AI辅助工具成为现代编程的一种新趋势,81%的开发者希望通过技术革新,更快地完成工作,绕过耗时的编码任务,包括加速构建过程,即便使用不熟悉的API,也能进行应用构建。

  虽然,对于新工具的使用,不同人有不同观点,但开发者更愿意,基于熟悉的环境使用AI工具。调查显示,41%的开发者希望更高效地使用工具,通过熟悉的编程语言构建集成式开发环境。

  另外,应用开发是一个系统性工程,除了开发本身,还包括很多上下游的工作。有21%开发者希望增强代码的安全性,监测和修改难以发现的漏洞;有15%的开发希望能自信地进行编码,并获取相关开源项目的存储库URL和许可证,以便轻松查阅并添加归因者。

  现有AI工具有哪些差距?

  问题是,AI工具虽多,但应用体验却参差不齐。在有些应用场景,现有应用还有较大提升空间。

  52%的开发者认为,AI工具虽然能用,可以实现效率提升,但只是部分场景比较好用。有17%的开发者认为,距离需求还差得很远,很难理解用户意图。仅有7%的人群认为,AI工具体验很好,能满足开发需求。

  AI辅助变成工具体验不好的点是,存在质量问题。56%的开发者认为,现有工具质量难以控制,生成的代码质量不稳定或不足以满足实际需求;26%的开发者表示,现有应用存在安全漏洞和潜在风险,无法理解安全性需求;25%的开发者在使用AI工具中的最大挑战是:理解和调试困难,生成的代码缺乏清晰的注释和可读性;还有17%的开发者认为,现有AI工具使用不友好,缺少上下文感知,操作麻烦。

  对比下来,GitHub Copilot几乎没啥缺点,就是高峰会慢;ChatGPT需要提供确定性的目标才能编码,对抽象需求理解能力有限,在一些技术细节上会有错误。无论是GitHub Copilot还是ChatGPT,都存在学习曲线,对于生成内容有些不受控,只能多磨合。有开发者总结:现有AI工具免费的不好用,付费的用不起。

  AI工具要想成为成熟产品,还需要做很多工作。比如:

  1、提供开发者可定制的SDK或API,使其能够深度集成到特定开发环境,提高交互体验;

  2、明确数据使用规则,避免使用用户代码等敏感数据训练模型,以保护用户隐私;

  3、明确ai工具提供的代码知识产权归属,避免法律风险;

  4、增加自适应与自学习功能,增强效益效率;

  5、特定编程环境需要加入编码规范;

  6、增加对中文引起的编程错误的支持;

  7、针对简单的页面交互和数据流转,可以基于设计文档直接生成可执行代码;

  8、好用到足够让大部分机械操作和大量可以复用的代码自动完成,并能保证质量;

  9、准确率、理解率和安全性进一步提高。

  展望未来,继续拥抱还是排斥?

  虽然,开发者们的观点不一致,但大部分人群持乐观态度。他们认为AI辅助编程工具是引领未来的新技术,虽然短期难以完全满足需求,但长远看所有的问题都能得到解决。

  64%的开发者认为,AI工具可以提高效率,能自动化执行繁琐任务。55%的开发者认为,随着AI工具的不断成熟,将在智能化辅助方面提供助力,例如代码补齐、错误提示和建议等。AI工具带来的价值是,支持多语言编程,无论是Web、移动应用还是数据分析和机器学习,都能找到相应工具。有28%的开发者看好这一技术方向,未来通过自然语义进行代码编程,也不是没有可能。

  在人工智能高速发展阶段,很多开发者基于机器学习和深度学习技术,进行场景构建。20%的开发者经过实践发现,好的AI工具可以加速应用构建过程,通过应用的不断使用和反馈来改进算法和模型,进而提升开发和应用部署的效率。

  另外,对于开发者来说,使用AI辅助工具不仅提升开发效率,也可以用于写文档。在多应用场景下,以“组合拳”的形式提供助力。

  总之,AI辅助工具未来发展前景非常值得看好。有94%的开发者表示,会持续进行AI相关工具使用,根据不同工具的优缺点,选择适合的产品,解决实际工作中遇到的问题。比如:有些代码明明是自己写的,但过一段时间后,不看提交记录根本想不起来。工作中经常出现重复写代码的现象,很消耗精力和时间。不管是为了提高工作效率,还是提升核心竞争力,开发者在未来都要有驾驭AI工具的能力,这已经是时代趋势。

  长远看,AI工具扮演的角色是,成为开发者的副驾驶,或者是私人助手,让更多人从纷繁复杂、重复性多的工作中解决出来,做更重要、更有意义的事情。

0
相关文章