
今天跟大家聊两个话题,一个是关于Java编程语言的未来,当然必须要跟AI放在一起说;第二个话题是关于AI编程的。这两个话题最近都有人咨询过我,所以今天就跟大家一起聊聊。
Java未来发展如何?是否可以与AI完美融合?
哎~其实聊这个话题还有点悲伤,毕竟之前我就一直围绕着Java和Golang语言搞云原生方向,但是现在,我自己都记不清已经有多久没写过Java代码了。如果把时间拉回到10年前,Java语言必须是编程界的王者,市场占有率第一,遥遥领先。但最近几年,其他各种原因暂且不说,就说受到AI这一波冲击,Java还能翻身吗,我感觉没希望了。让我们来看看最新的编程语言排行榜:

(数据来自TIOBE)
Java已经被Python远远的甩到了后面,甚至是3倍的关系,Python真是断崖式领先。然后再让我们把时间拉回到10年前,在2015年时,Java真是一枝独秀,市场占有率遥遥领先Python,是Python的5倍。

(数据来自TIOBE)
但你说短短这10年间那么大的变化,都是因最近3年AI的崛起所拉开的差距吗,其实也不是,让我们再来看看2021年编程语言的排行:

(数据来自TIOBE)
当时python就已经慢慢在赶超Java了(这背后就不给大家分析了,毕竟社会和科技在发展,Java语言有它自己的局限性,Python崛起也是必然的),但是差距不大,而且不相上下,不指定哪个月Java就又冲回第一了。
最后我们来总结一下其发展,从2015年的Java遥遥领先,到2021年AI大火之前Python和Java不相上下,到2022年底AI大火之后一直持续到现在变成了Python遥遥领先。所以Java语言的发展,一直在持续走低,Python在持续增长。在其过程中,C与C++一直很稳定在编程语言的二三名。
既然AI发展势不可挡,Java能与AI很好的结合起来吗?我相信未来或许会,但现阶段看答案是否定的。
现在在业界,Java与AI没有一个很好的融合方案。在AI领域,现在就两种编程语言,一个是Python,这没啥说的,主要负责顶层的一些工作,例如模型训练、AI应用的开发等。而AI的底层,例如Python底层用到的加速库、AI硬件方向编程等,底层都是C或C++。所以如果我们用金字塔来描述的话,中上层是Python,底层是C或C++,就没Java啥事。
那Java与AI融合是从何而来的呢?其实主要是Java的开源框架Spring生态,包括国内的Alibaba也是一样,将Spring与AI相融合,封装了一些库,可以方便Java调用AI大模型而已。背后本质的出发点,是不想让Java在AI的浪潮下就这么死掉,Java得跟上才行,毕竟现在特别多的系统还是基于Java生态,要集成AI功能,不用换语言,添加一些包去调用即可。这么做,想法是好的,思路没问题,但是企业那么搞的很少,最后大家还是用Python去开发和集成。说个极端点的例子,你想微调一个模型,你看有谁拿Java去搞,根本就搞不了...

(Spring AI)

(Spring AI Alibaba)
可能有人会反驳我,网上还有不少企业,在招聘AI的Java工程师呢。如果你后续深入了解就会知道,只是有一个AI的项目,项目中用到了AI,但是你去了还是写Java的部分,只是你需要懂AI而已,了解一些AI领域的知识。
所以现在Java想在这波AI浪潮下翻身,可能性微乎其微了,干不过Python的...但有些大型的分布式系统,从性能各方面考虑,还是用Java写最合适,但是这种需求以后会越来越少。而历史遗留的部分基于Java的系统,也在慢慢被一些其他语言重构。
AI编程炒得那么热,真实情况到底如何?
说完了Java这个悲伤的故事,再让我们来聊聊最近一年持续大火的AI编程领域。网上实在是炒的太热了,有些无良自媒体博主为了流量,更是吹的天花乱坠,夸大其词,让大家感觉AI编程无所不能,小白也能飞起。那今天我给大家说说真实的现状。
先公布一组数据:截止到2025年6月,使用AI编程工具,开发者平均生产率提升35%,其中20%的开发者效率提升超50%。
现在AI编程领域分三类产品:
1、第一种是大家吹的上天的氛围编程(Vibe Coding)类产品,以Bolt.new为代表,适合快速完成从想法到应用。
2、第二种是专业的效率提升工具,以Cursor为代表。
3、第三种定位数字员工,节省人力,以Devin为代表。
我不会从上面这三个分类维度去分析,今天想说的就一个方向,你用不用Agent模式。
无论你是Bolt.new主打氛围编程也好,还是Cursor最早主打Agent模式快速生成代码提升生产性也好,还是更直接Devin数字员工也好,背后的核心都是Agent模式。我只能说,大家慎用,前期很爽,后期出了问题你会很痛苦,甚至你会推翻之前的所有从头再来,更甚至有可能Agent模式会闯祸,让你陷入巨大的经济损失。如果把这些事展开了说,真是有太多的东西能说了,如果说太多了,还会有一堆人怼我,因为每个人的使用场景不一样,每个人对工具的认知和使用工具的能力也不一样,对于AI生成的代码,自身的可控性能力更是不一样。
作为一个IT行业的老兵,从我自身来看,大多数时候我还是用Copilot模式,起码整体思路和代码写法都是按照我的想法走的,Copilot模式可以提高生产性更快的帮我去写代码实现功能,确保所有代码完全可控,人可维护,更不会给我闯祸。
就说这么多了,上面有些东西不展开说了,深耕这行的相信懂的都懂。
最后给那些无良自媒体博主喊一句话:期待你们最后能用Vibe Coding开发出非Demo级别的现象级、并且后期可维护的软件产品。
(正文完)