AI时代下,Java该如何起手项目开发

结合人工智能在软件工程领域大行其道的当下,该如何快速开启Java项目的设计开发

30多年来,开发者工具层面终于出现了革命者,本文主要结合人工智能在软件工程领域大行其道的当下,针对从零开始和迭代已有项目,介绍如何快速开启Java项目的设计开发。

最近常听到一句话,AI不会替代你,但熟练使用AI的人可以轻松干废你。 初听有点儿耸人听闻,实际却在发生中.... 甚至斯坦福大学最近也开设了CS146S课程, 要求必须使用AI完成开发任务,作业是提交完成开发任务的提示词prompt。专门教授如何将大模型和AI工具(如编程智能体、AI IDE)集成到软件开发流程中,从而大幅提升开发者的生产力,并探讨了现代软件工程师的角色演变。课程大纲如下:

工欲善其事必先利其器

传统开发,必备神器IDEA

下图是2025.3版本,安装包大小1G,包括java生态的大量工具插件,还内置了教学引导,默认给30天的免费旗舰试用期。 启动界面 教学导引

导引学习,主要介绍一些快捷键(包括any搜索、补全建议、重构)和调试技巧等。

  • Ctrl+Shift+A或者两次Shift按键,触发anything search。
  • Alt + Enter, 万能修复/提示
  • Ctrl + Shift + Space​,智能代码补全
  • Ctrl + Alt + L​,代码格式化

传统IDE中,补全是当初能让其迅速普及开的功能之一,而调试也是另一个极好的功能。在现代AI IDE中,调试似乎也不需要了,直接贴错误日志,就自动开始debug纠错了。

使用AI开发的现状

当下主流的使用AI开发模式有3种基本形态:

  • 一种是传统IDE + 编程插件助手,代表有Lingma、Continue等,是属于渐进式拥抱AI辅助开发,从而提高生产力的方式。

  • 另一种是基于开源IDE打造的AI原生IDE, 提供更沉浸式的AI编程体验,由AI自主完成分析、设计、编码乃至测试的完整流程,一般需要订阅收费。

    • 国外:Cursor(基于VS Code)
    • 国内:Trae.CN(字节)、CodeBuddy(腾讯),Qoder(阿里.新加坡团队)
  • 还有一种终端工具,代表是Claude Code、Codex CLI等,可以灵活集成到以上两种模式和其他第三方CI/CD协作流水线中

现在市场参与者,基本都在布局各形态的开发场景,本文发稿时,通义lingma也在公测IDE了,CodeBuddy已实现插件、IDE、CLI三端全形态覆盖。

年初我个人也结合开源vscode+roocode插件,开发过一款自己的IDE,叫aide,基本功能也都具备,后面有时间可以整理发出来一篇手把手打造自己的AI原生IDE。

不过github Copilot在国内市场才是比较可惜的,背靠微软(VS生态),手里有github,竟然在市场上,没有国外初创企业Cursor等的声势浩大。

这几种形态,反映了一个演进方向: 将AI集成到开发工具 ====> 将开发工具集成到AI中。人在其中的动手参与度逐步降低,后者看上去是最理想的终极形态,合理设置后,可以让AI把整个软件交付的全流程(需求分析->设计->编码->测试->部署上线)自动完成。

不过这里不应该存在谁更好的说法,最终要看你的团队运作模式,是单人全栈还是严格‘瀑布模式’下的团队模式,毕竟康威定律还在生效(技术问题的背后,往往是人的问题和组织问题)。这类AI原生IDE现在也基本支持个人版和企业版了,不过从业内的实践来看,在单人全栈模式下,AI原生IDE的优势会更明显。

由于本人工作行业限制,接触最多的是lingma,不过为了客观对比更高阶的形态,这里以Trae.CN为例

安装包大小204M,内置前端工具链,如涉及其他技术栈,需要自行安装插件。 支持两种模式(IDE和solo模式),就是前面提到的IDE+插件助手模式和AI原生IDE的形态。

启动界面 solo模式

AI原生IDE,相对传统IDE,最大的区别是在软件工程中的参与阶段左移了,从需求分析开始就可以介入了,并且以AI为主导推理,自动调度集成MCP工具来推进工作。

Vibe Coding 氛围/AI结对编程

零开项目(避免重复造轮子)

java生态已经非常丰富,几乎每个领域都有对应成熟、经过验证的开源项目,遵循专业的事情找专业的工具干的原则(寻找轮子),避免让AI从零开始重复造轮子。

鉴于LLM的工作原理,预测Token,让AI从零开始重复造轮子,这是血亏的实践结论。。。应该利用已有成熟库,喂文档,进入迭代阶段。 当前最佳SOTA实践是Claude的Skills攻略,此处不介绍,如涉及复杂项目可考虑(个人还没试过)。

推荐先要根据项目需求场景,直接驱动builder使用成熟脚手架或者传统IDE初始化一个项目基础架构。整理提示模版如下:

我需要实现 [集成类系统的权限管理],请帮我:
1. 分析这个需求可能涉及哪些技术领域,有没有成熟的库/项目已经做过类似的事?
2. 确定使用Java技术栈,并使用mvn初始化合适的脚手架

需要提前安装配置好JDK和Maven环境,此处不表。

如果公司有对应的研发规范,推荐使用rules规则,将提示模版作为rules规则,让AI根据规则进行架构设计选型。

迭代存量项目

打开已有项目的根目录,会自动判断项目技术栈,并推荐安装相应的插件。 推荐安装插件

IDE模式下,内置了4中智能体

大多数情况下,builder就可以完成开发任务,要熟悉存量项目架构设计的话可以使用chat模型。chat模式下,可以询问代码算法细节,项目依赖用法等。

建议先在buidler模式下,自动生成团队规范。提示词如下

生成该项目的一个团队规范,存放于.trae\rules\project_rules.md文件中

一定要确认自动生成规范是否有误并合理。

迭代项目时,让AI根据规则进行架构设计选型和代码编写。 未完...后面单独开章分享。

总结

要想真正在AI原生IDE中上手生产级系统开发,还是要掌握一些基础的编程技能,如数据结构、算法、设计模式、软件工程等等。

本文开头提到的CS146S课程,也是要求学生必须具备扎实的编程经验,才能报名的。不然,一是不知道如何让AI更好的替我们工作产出(prompt该如何写),二是不知道AI的产出是否存在隐患,很快就会进入AI“屎山”代码中,是你真的会看不懂一小时前的某段代码逻辑意图... 至少当下,会因为AI的易得性反而更容易欠下技术债务。软件还是要讲究可维护性的,不过话又说回来,不需要后续维护的,讲究快速原型的场景,确实是极好的。

AI协同并不简单,让开发人员最讨厌的文档编写,直接上升到了第一公民,变成面向文档编程了。不过这个领域还在快速发展中,但人与AI协同开发的共识,个人比较认可的原则总结如下:

  • 人来负责“规划”,AI 负责“执行”
  • 绝不提交自己不理解的代码
  • 避免重复造轮子
  • 小步迭代,持续清理

参考资料:


最后修改 December 12, 2025: aadd java-tips (51b6497)