这就是最重要的 JVM 语言,我们省略了一些不太流行的 JVM 语言,但是我们可以提一下它们的名字:Jython、JRuby、Ceylon、Fantom 等等。你可以通过该地址获取现有 JVM 语言的全部列表。
我们可以发现,在最初的八年或十年间,Java 并没有太多的竞争对手,但从那之后,Java 就面临一些竞争了,那么有竞争是一件好事儿还是坏事儿呢?
2. 竞争加剧带来的好处
正如我们在前文所述,Java 在早期并没有太多改变,这很可能是因为没有改变的必要,尽管它远远称不上完美,但也已经得到了广泛的使用。
但是,新的竞争者出现了,这些更现代的语言带来了新的特性,解决了长期困扰 Java 开发人员的一些痛点。
举例来说,我们看一下 Scala 语言,自 2009 年以来,Scala 变得越来越受欢迎,开发人员欢迎这种新的函数式风格,它能够让他们的编码更灵活,也能安全轻松地编写出并行代码。我们可以在下面的谷歌趋势图中看到这个趋势:
ava 语言最初是在 1996 年 1 月份正式发布的,所以它已经有 24 年的历史了,怎么样,还不错吧?最初,Java 是一种命令式语言,遵循纯粹的面向对象程序风格。它同时也是强类型语言,Java 的语法在某种程度上与 C++ 和 C 语言很相似,但它被认为是一个改进版本,因为使用 Java 编写代码要比使用 C 或 C++ 容易得多。另外,在它的批评者中,最大的争议在于其繁琐性。
第二个发布的 JVM 语言是 Groovy,它最早出现于 2003 年,不过其第一个官方和标准版本 1.0 是 2007 年才发布的。Groovy 的好处在于,它还可以用作脚本语言。Groovy 是一种动态类型语言,所以类型检查是在运行时进行的;这也是一些开发人员不喜欢 Groovy 的原因之一。我们使用 Groovy 编写代码,在编译时看起来它是正确的,但是在运行时,我们才会发现其中有问题。
我们行业始终有一个热门话题,那就是对 Java 的批判,这种批判很大程度上来源于 Java 的繁琐性以及它所生成的大量样板式代码,而这些代码在很多场景下是根本不需要的。
虽然我一直以来都很喜欢 Java,但是我不能说这些指责是错误的。的确,Java 的繁琐性以及数量不菲的杂乱代码在很多情况下会很烦人。在大多数情况下,我们不得不接受我们生活在一个不完美的世界这一现实,很多时候,我们必须两害相权取其轻。我们都知道,Java 并不完美,但是主要的问题在于在此之前为什么没有采取任何措施来解决这些问题呢?
我认为,变更需要耗费这么长时间的唯一原因就是 Java 缺乏足够的竞争。Java 语言之所以能够主导市场,可能就是因为缺乏真正的竞争对手,当然也要归功于 Sun 和 Oracle 先后做出的巨大努力。
Java 提供的强类型安全性,以及作为一个结构良好的语言所带来的其他特性,使其成为大型项目中非常流行的语言。通过使用 Java,我们很少会让事情变得难以收拾。Java 的另外一个重要特点是作为多平台语言,它运行在自己的虚拟机上,这使其能够完美契合很多的组织。如果你通过著名的 JIT 编译器启用了其自动性能优化的固有能力,那么在很多情况下都能将糟糕代码所带来的影响最小化,这样我们就有了一组使用 Java 的坚实理由。
但是,后来发生了什么呢?接下来的事情就是,能够像 Java 那样运行在相同 JVM 中的新语言推向了市场,这些语言消除了 Java 中最令人头疼的问题,并为开发人员提供了更好的环境,而且在很多情况下,它们的学习曲线非常平坦。
在继续下面的内容之前,我们简要回顾一下 JVM 语言的历史。
1. JVM 语言的历史
在开始之前,我想澄清一点,那就是我省略掉了一些现有的 JVM 语言,这主要是因为它们从来没有具备足够强的吸引力,不能视为我们行业中广泛使用的候选语言。那么,我们就开始快速回顾一下 JVM 语言的历史。

(编辑:鹰潭站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|