用 Codex 加速 Java 开发:从代码生成到测试覆盖的完整实战

过去半年,我用 Codex 和 GPT-4 这类代码生成模型协作开发了几个 Java 项目。结果很直观:完成同样功能的时间从以往的 30-40 小时下降到 15-20 小时。这篇文章分享几个最有效的使用场景和踩过的坑。

最直接的收益来自样板代码。比如一个标准的 Spring Boot Controller,以前我会:

节省时间: 从 1-2 小时 → 10-15 分钟。

关键是 prompt 的质量。“用 Spring Boot 写 controller” 太模糊。“Write a controller with pagination support for a product list, using Spring Data JPA with custom queries” 就会好很多。给模型更多上下文——使用什么框架版本、需要什么功能、遵循什么命名规范——它的输出就更接近你能直接用的代码。

我接手的一个项目有一个 800 行的 service 方法。我问 Codex:“refactor this method to smaller, testable functions while preserving the original business logic”,再贴上代码。

它拆成了 6 个清晰的私有方法,每个 80-120 行,职责明确。我花 20 分钟审查和调整,最后的版本比原代码更容易测试。

这里的秘诀:Codex 不会主动重构,但如果你明确告诉它 “extract these responsibilities into separate methods” 或 “apply the Single Responsibility Principle”,它就有方向。

给 Codex 一个方法和几个测试用例示例,它能生成 10-20 个测试。你不会全部用,但这个模板省了大量脑力。

质量:生成的测试有 70-80% 是有效的,剩下的你改改就行。比起自己从零写,节省一半时间。

这是我用得最多的。复杂的 JPA 查询和自定义 SQL 不好写,但 Codex 很快。

它会给出可运行的代码,包括 JPQL 或原生 SQL,还有 Pageable 参数。

注意:Codex 生成的 SQL 逻辑通常是对的,但要自己验证 join 和 where 条件,偶尔会有小错。

Codex 最大的价值不是取代编程,而是减少重复劳动。样板代码、测试、简单的 CRUD、SQL 查询——这些它都很擅长。你的时间用在设计、权衡、业务逻辑这些地方。

如果你也在用 AI 工具写 Java,我的建议很简单:写清楚 prompt,审查生成代码,再交付。这三步做好了,效率提升很明显。

来源:稀土掘金 原文