游戏开发中的代码质量已不再只是代码外观或开发者偏好的问题。根据JetBrains在Game Development Day 2026活动结束后重新发布的一份演示,质量包括六个相互关联的维度:结果正确性、性能、稳定性、安全性、可维护性和可复用性。
对于服务周期可能持续10至12年的游戏而言,这些维度尤为重要。运行缓慢或不稳定的代码不只是开发团队内部的问题,还可能以加载时间过长、崩溃、安全漏洞、负面评价或退款的形式呈现在玩家面前。
人工智能加速开发,也使代码规模成倍增长
材料称,时间安排的压力促使许多团队使用人工智能辅助编程。根据《Unity Game Developer Report 2026》,95%的Unity开发者在工作中使用人工智能来辅助编程。
这使团队能够在数天而非数月内创建原型并尝试新的机制,同时减少花在重复性工作上的时间。但速度也可能意味着,在开发者过去只能编写几百行代码的时间里,如今生成1万行代码,从而扩大需要审查的问题范围。
JetBrains引用CodeRabbit的一项研究指出,人工智能生成的代码总体而言未必比人工编写的代码更差,但它可能以不同方式失败。根据该研究,这类代码产生的逻辑问题和错误多出1.7倍,同时还存在与可维护性和安全性相关的其他担忧。材料提醒称,包括人工智能工具供应商数据在内的此类研究结果需要经过批判性审视。
静态分析能带来什么?
该演示建议将静态分析作为代码合并前检查代码的基础层。它能够覆盖正确性检查、测试覆盖率边界、性能、内存和资源安全、资源泄漏、异常、过时依赖项,以及用于发现更复杂问题的流分析。
它还有助于发现代码异味、复杂度、代码重复,以及对团队内部标准的遵循情况。这些方面对于自动生成的代码尤其重要,因为材料称人工智能倾向于生成重复代码,而不太倾向于进行重构。
静态分析的主要优势是确定性:在检查相同代码时,工具会给出相同结果,并且每个结果都可以关联到具体检查,用于解释问题原因。此外,它不消耗令牌,通常也比完全依赖人工智能模型的审查更快、成本更低。
实践模式:两层与验证循环
JetBrains并不认为静态分析可以替代人工智能。基于模式的分析并不总能理解代码意图,或理解跨越项目文件和组件的逻辑关系,而这些正是人工智能能够发挥价值的领域。
所提出的模式从编写代码开始,无论代码由开发者还是人工智能工具编写,随后在持续集成流水线中运行静态分析。部分结果可以通过快速修复自动处理,旧问题则可以纳入基线,以免阻碍新的更改。之后,由人工智能处理逻辑问题或重构任务,代码再返回静态分析,以便在合并前验证其是否符合质量和安全标准。
材料提到的两项研究中,一项指出,将静态分析与大语言模型调用结合,可将令牌使用量降低72%至92%;另一项则发现,在生成的代码进入主分支之前,最多可以将其中的漏洞减少33%。
团队在实践中会发生什么变化?
实践意义并不是增加一个漫长的审查阶段,而是将工作分配给各有明确职能的工具。在Qodana中对拉取请求进行检查,可以只检查发生变化的文件;根据材料,检查大约需要一两分钟。JetBrains还介绍了Rider中的Hooks功能:每当代理生成代码时,该功能都会调用代码格式化和问题检查操作,然后将结果返回给代理,让其按照团队标准进行修正。
这种方法仍然需要人工设定质量标准、持续审查开发流水线,并对研究和结果进行独立验证。但它提出了一个明确的原则:提高代码生成速度并不会消除衡量代码质量的必要性,反而会使系统化检查更加重要。