Skip to Content
超越Vibe编程
book

超越Vibe编程

by Addy Osmani
August 2025
Beginner to intermediate
254 pages
3h 1m
Chinese
O'Reilly Media, Inc.
Book available
Content preview from 超越Vibe编程

第11章 超越代码生成:人工智能增强开发的未来

本作品已使用人工智能进行翻译。欢迎您提供反馈和意见:translation-feedback@oreilly.com

Vibe 编码可能始于人工智能根据我们的提示生成 代码,但其影响远远超出了编写代码的范畴。 随着人工智能技术的发展,它们将改变软件开发生命周期的方方面面。在本章中,我将对人工智能在软件中的作用如何在未来扩展进行推测,但也会提供相关信息。我将探讨人工智能驱动的测试、调试和维护;人工智能如何影响软件设计和用户体验个性化;人工智能辅助下的项目管理演变;甚至编程语言本身的未来。我们的目标是想象这样一个未来:人工智能不仅仅是代码生成器,而是软件工程的全面参与者--同时将讨论建立在基本原则的基础上,因此即使具体技术不断发展,讨论仍然具有现实意义。

测试、调试和维护中的人工智能

想象一下,在未来的开发环境中,只要您编写了一个函数(无论是手工编写还是动态编码),人工智能工具 就会立即为其编写一套单元测试,发现潜在的错误,甚至修复它们--所有这些都只需要几秒钟的时间。这种情况很快就变得可信了。让我们来分析一下人工智能在质量保证和维护方面的潜在(和已经出现的)贡献。

自动生成测试

编写全面的测试非常耗时,而且往往会因为截止日期而被忽视。 正如第 7 章所述,当前的人工智能助手可以通过自动生成测试来缓解这一问题。例如,在给定一段代码后,人工智能可以提出一套涵盖典型案例、边缘案例和错误条件的单元测试。

未来,这可能会更进一步:人工智能可以检查你的整个代码库,找出测试覆盖率不足的函数或模块,并生成额外的测试。它甚至可以模拟人类测试人员不会想到的输入(如模糊测试),从而捕捉到可能存在的角落错误。这样做的好处是,只需编写最少的人工测试,就能获得更强大的代码库。

需要注意的是,测试的好坏取决于人工智能对规范的理解。因此,人类应该对人工智能生成的测试进行审查,确保它们与软件的预期行为一致。例如,人工智能可能会断言某种输出在技术上是代码所做的,但也许需求是不同的--只要有人类在回路中,这实际上有助于捕捉代码或测试中的误解。

智能调试

调试通常需要通过乏味的日志搜索或代码步进来定位错误源。 第 5 章向你展示了人工智能如何像智能调试伴侣一样发挥作用。目前的一些人工智能工具可以将错误信息和有问题的代码作为输入,并返回解释和代码更改来修复错误。

如果想了解人工智能辅助调试工作流程的发展,可以考虑使用人工智能系统来监控程序的执行,当出现崩溃或异常时,它会分析堆栈跟踪和变量状态,找出可能的原因。它不会只给你一条错误信息,而是会说:"你的程序出错了:

调用 getEmail() 时,由于 userProfiles 为空,应用程序崩溃。这表明在加载用户配置文件时缺少 null 检查。

此外,人工智能还能提出修复建议:

可能的解决办法是在 userProfiles 为空的情况下对其进行初始化,或者在调用 getEmail() 之前添加一个条件。您希望我应用此修复方法吗?

未来的调试人工智能可以直接与运行环境集成,实时捕捉问题。它们甚至可以通过分析代码路径,问题发生之前就预测出来:

如果在 y = 0 的情况下调用该函数,可能会引发除法归零异常;请考虑处理这种情况。

这与静态分析类似,但人工智能掌握了无数代码库和错误模式的知识,因此可能更具洞察力或灵活性。

预测性维护和重构

随着 时间的推移,需求会发生变化,代码也会变得过时或不理想。维护涉及重构(在不改变行为的情况下改进代码结构)、更新依赖关系和优化性能等活动。人工智能可以在这些方面提供帮助: ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Python设计模式(第2版)

Python设计模式(第2版)

Posts & Telecom Press, Chetan Giridhar
深入淺出代數

深入淺出代數

Tracey Pilone, Dan Pilone

Publisher Resources

ISBN: 9798341667020