许多开发者仍然认为 Java 与当今时代息息相关,看完本文,你会发现 Java 的影响力已经大幅减弱。实际上,Java 是一种濒临灭绝的编程语言。尽管 Java 一直是世界上使用最广泛、最受欢迎的编程语言之一,但它很快就会面临消亡的危险。
没错,很多人会说出一个事实:Java 拥有一个庞大而活跃的开发者社区,并且仍然用于广泛的应用程序,包括网络开发、移动应用程序开发和企业级软件开发。
但是 Java 能否在未来 10 年存活下来呢?让我们看看开发人员对 Java 有什么误解:
Java 有一个庞大而活跃的开发人员社区。全世界有数以百万计的 Java 开发人员,这种语言在开发人员共享知识和资源的在线论坛和社区中有着很强的存在感。
尽管这种情况仍在继续,但开发人员转向其他平台和编程语言的速度很能说明问题,我个人看到开发人员在恐慌中跳槽。
主要问题在于, Java 作为一种编程语言还没有现代化,因此它仍然很冗长,结合了静态类型和动态类型之间最糟糕的情况,因为它有一个相当跛脚且笨重的类型系统。此外,Java 还要求在一个具有宏观启动时间的 VM 上运行(对于长时间运行的服务器来说不是问题,但对于命令行应用程序来说是痛苦的)。尽管它如今表现得相当不错,但是仍然无法与 C 或 C + + 竞争,而且,只要开发者稍微投入一点热情,C # ,Go,Rust&Python 可以或者将会在这个领域超越它。对于真实的生产服务器,它往往需要相当多的 JVM 调优,而且很难做到正确。
Java 被用于广泛的应用程序。Java 不仅仅是一种 Web 开发语言,它还被用于开发移动应用程序、游戏和企业级软件。这种多功能性使它成为许多不同类型项目的有价值的语言。
Java 不再是移动应用开发中最受欢迎的编程语言,特别是 Android。Kotlin 现在统治着 Android,而大多数 Android 开发者早就跳槽了。就连谷歌(Google)也因为几年前与甲骨文(Oracle)的惨败而放弃了将 Java 作为 Android 事实上的语言。Java 作为一种 Web 开发语言早已不再流行。就企业开发而言,Java 仍然适用于大型企业,因为它是可靠和稳定的。尽管许多创业公司并没有将 Java 作为他们企业软件的首选,他们使用了其他的选择。
Java 是一种基础语言。许多较新的编程语言都是基于 Java 的原则和概念构建的,并且在某些方面与 Java 兼容。这意味着即使 Java 的受欢迎程度下降,它的原则和概念仍然是相关的。
对于很多刚开始编程之旅的人来说,Java 可能是基础语言,但事实上 Java 仍然是非常古老和不灵活的。最重要的是,与其他现代编程语言相比,它仍然很冗长,这意味着它需要大量代码来完成某些任务。这可能使得编写简洁、优雅的代码更加困难,并且可能需要更多的努力来维护大型代码库。此外,Java 是静态类型的这一事实意味着它可能比动态类型的语言更严格,更缺乏灵活性,这可能会让一些开发人员感到沮丧。
Java 得到了大公司的大力支持。Oracle 是一家维护和支持 Java 的公司,对 Java 语言有着坚定的承诺,并将继续投资于 Java 的开发和改进。此外,许多大公司,包括谷歌和亚马逊,在他们的产品和服务中使用 Java。
甲骨文的一波“吃相难看”的加大收费的操作,正在快速地将其 Java 的市场份额输给竞争对手。
虽然下面的图表显示甲骨文仍然拥有最大的市场份额,但是其市场份额已经减少了一半以上。在2020年,甲骨文“大约占据了 Java 市场的75%”,而现在只有不到35% 。
根据 New Relic 的数据,排名第二的是亚马逊(Amazon)。自 2021 年 11 月 Java 17发布以来,亚马逊的市场份额大幅上升。当时,亚马逊的市场份额几乎与 Eclipse Adoptium 相同。
Java 在中小学和大学中被广泛教授。Java 是一种用于教授编程概念的流行语言,在中学和大学的计算机科学课程中经常使用。这意味着有一批稳定的新开发人员正在学习 Java 并熟悉其功能。
这种情况正在发生巨变。有志成为软件开发人员的有活力的大学生正迅速转向其他编程语言,比如Rust、Go、Python。值得一提的是,这些新的编程语言都存在着普遍需求,这也加剧这种态势的发展,越来越多的人会寻找替代语言。
虽然这是个有争议的话题,但并不妨碍 Java 曾经的荣耀:它彻底改变了软件编写的方式,并为其他编程语言创建了一个基准。
然而,不幸的是,Java 的所有权掌握在公司的手中,公司在没有多少财政收益的情况下,迟早会没有动力去继续改进语言。
因此,即便 Java 不会很快消失,但是它在几年内将面临失去主导地位的严重危险,这一点不言而喻。