本文翻译至《Why do people still use Java, if Java is behind technologically》


首先,Java 开发人员有很多工作岗位,这是一个原因,但为什么人们仍然使用 Java,包括在新项目中使用呢?

最近流行的高级语言,如 Python、Ruby,因其代码简便性和简洁性,可以很好地提高开发人员的生产力、灵活性和快速迭代。这些语言的动态特性对于许多广泛的应用程序来说非常棒,但是,当项目变得非常大、涉及到大量开发人员或者当速度和容错性至关重要时,它们就会开始崩溃。

有一些技术和约定可以解决动态类型的代码稳定性问题,但是技术和约定意味着人们需要遵循它们,即使这样,也存在难以预防的漏洞。以 PHP 为例,它在整个 Facebook 中用于后端编码,Facebook 对其进行了扩展,为其提供静态类型和动态编译,以便它可以提供使用 Java 等技术时所获得的速度和稳定性。Scala、Haskel、Erlang 和 Golang 等外来语言将主要用于最适合它们的特定应用程序。

另一方面,对于许多应用程序来说,Java 仍然是同类中最好的。这是构建坚如磐石、快速、可扩展、无错误的后端系统的最佳方式。它拥有最快的 JVM。只有 C 或 C++ 更快,并且仅在某些狭窄的情况下,如计算算法优化。Java 也是 Android 的语言,Android 是地球上部署最广泛的智能手机操作系统。

有人在评论中指出,Rust 是一种新兴语言,而 Go 作为可扩展的后端服务器语言正在站稳脚跟。Java 在抽象和执行速度方面可能不是当今“最好的”,但它仍然拥有庞大的库安装基础,这些新语言还没有,而且可能在很长一段时间内都不会。

(END)