Java真的可以称为世界上最流行的编程语言吗?有一些保留,是的。大多数现代公司现在都在使用 Java,并将在未来许多年内使用它。

超过 95% 的企业计算机使用 Java,超过 90% 的计算机使用 Java,使用这种语言的移动设备数量超过 30 亿。因此,世界上任何地方几乎任何规模较大的公司都使用 Java 并聘请 Java 专家也就不足为奇了。

Java + Android = 爱

是什么让 Java 最初如此流行?首先,它的跨平台支持和通用性。Java 的灵活性使得用这种语言编写的程序几乎可以在任何设备上运行,包括台式 PC、手机,甚至大多数其他设备,从智能机器到家用电器,这些设备现在也越来越智能。

当然,Java 在现代世界的流行和强大地位在很大程度上要归功于移动平台,更具体地说,是 Android 操作系统。这是有道理的:没有移动版本,今天的任何应用程序都无法运行,Android 坐在移动操作系统的宝座上,如果没有 Java(有 Kotlin,但这是一个单独的主题),Android 开发简直是不可想象的。因此,大多数严重依赖多功能移动应用程序的大型现代公司根本离不开 Java。

Java 的领导地位和统计数据证实了这一点。根据 TIOBE 指数,Java 是世界上最流行的编程语言,达到 16%,领先于 C 和 Python。

顶级公司和独角兽。他们如何使用 Java

我们已经考虑了 Java 在现代商业环境中的领先地位。由于 Java 是如此的通用和流行,初学者发现很难掌握使用该语言的所有领域、大公司和成长中的初创公司究竟如何使用它以及它最有用的地方。

当你想正确理解这个问题时,没有什么比听到“Java无处不在”这句话更令人不满意的了。因此,我们最好看看成功公司的真实例子,这些公司的业务与 Java 及其提供的功能有着千丝万缕的联系。我们将讨论几家大众市场巨头,这些公司几乎人人都知道,而且许多人无法想象没有他们的服务。

优步

优步是一家成功公司的典型例子,其业务围绕移动应用程序构建,而移动应用程序又基于 Java。

是什么让优步(和类似服务)如此有吸引力和受欢迎?事实上,用户几乎可以立即打开应用程序并叫车。优步应用程序会显示汽车当前所在的位置、目的地以及精确到分钟的到达时间。Uber 甚至会显示汽车的车牌号、颜色和品牌,以及司机的姓名,让用户几乎可以立即认出所需的汽车。付款过程也快速简便——该应用程序会自动从用户的信用卡中扣款。

多亏了 Java,这一切才成为可能。现代数字业务的现实迫使公司创建全天候 24/7 可用的新移动应用程序,并在订购后几分钟内满足客户对商品和服务的需求。为了满足这种需求,越来越多的公司正在迅速转向 Java。

在很大程度上,Java结合不断改进的代码,是最新版本 Uber 应用程序的用户可以访问如此多信息以及许多功能和特性的原因。例如,该应用程序可让您查看旅行费用并根据一天中的时间、天气和其他因素跟踪票价变化。您还可以选择具有不同舒适度的汽车,或者与同向行驶的其他用户共享旅程。要使这些功能发挥作用,需要数十个(有时是数百个)后台进程,而 Java 主要负责成功协调这些进程。

网飞

目前,每个人最喜欢的视频服务每天处理多达 20 亿个流媒体内容请求。这一切都要归功于以 Java 为中心的架构。

Netflix 是世界上最受欢迎的在线电视网络(如果可以这样称呼的话),其服务模式和界面已成为标准。只需支付约 10 美元的小额月费,Netflix 用户就可以随时随地在任何设备上观看任意数量的电影和电视节目。

Java 的可扩展性对 Netflix 的成功起到了关键作用,使该公司在 50 多个国家/地区的用户群增加到 5700 万。这些观众每月观看超过 10 亿小时的视频内容。

“我们架构中的绝大多数服务都是基于 Java 和 Java 虚拟机 (JVM) 构建的,”Netflix 的开发人员安德鲁·格洛弗 (Andrew Glover) 说。“我们一直在运行数以千计的 Java 进程,而且随着我们平台的发展,我们没有看到严重的基础设施问题。” 我们还使用许多基于 Java 的开源工具,可以轻松跟踪、更新和扩展我们的服务。”

“当用户打开 Netflix 时,系统会在后台启动大约十几个不同的进程来授权用户,确定他或她正在使用的设备,确保该帐户处于活动状态,并查看他或她最近的活动profile。所有这些流程都使用基于 Java 的开源工具Eureka进行管理,”Glover 说。

推特

Twitter 是世界上最受欢迎的微博服务,出现于 2006 年(以互联网行业的标准来看是远古时代)。在早期,随着用户群的快速增长,它在性能和稳定性方面存在巨大问题。该服务经常崩溃,以至于用户在 Twitter 宕机时会看到的带有白鲸图像的屏幕已经成为一个模因。

然而,自 2010 年底以来,Twitter 变得更加稳定。在过去的几年里,它取得了出色的正常运行时间指标,以至于昏昏欲睡的白鲸被遗忘了。这一变化应该感谢谁?爪哇,当然。

Twitter 高级开发总监罗伯特本森在接受采访时提到了这一点。据他介绍,从该平台成立之初,Twitter 开发人员就该服务的架构以及如何最有效地处理每秒来自用户的大量请求进行了很多思考。如今,Twitter 拥有超过 2 亿活跃用户,每天发布超过 4 亿条推文。经过几年的分析和寻找最佳解决方案,Twitter 的工程师开始使用 Java 虚拟机,这使得横向扩展系统和应对负载成为可能。

Twitter 开发人员已将公司最关键的大部分系统转移到使用 Java 和 Scala 编写的服务,这些服务在 JVM 中运行。这就是为什么 Twitter 现在在世界范围内相当稳定,甚至能够轻松应对世界杯决赛或美国大选等重大事件期间出现的高负载高峰期。该系统还允许用户查找有关几分钟前发生的事件的新闻。

价格线

对于在线预订领域的领导者 Priceline 而言,Java 是提高效率和有效性的关键。该语言可实现灵活性、性能、移动性和巨大的影响力。

Priceline 是一款用于预订全球酒店和公寓的应用程序。这项服务在欧洲的知名度略低于在美国的领先地位。Priceline是Booking Holdings的一部分,其中还包括几家超级流行的预订服务,即KAYAK、Rentalcars、Booking、OpenTable和Agoda。因此,下面提到的使用 Java 的方面在很大程度上也与这些服务有关。

尽管搜索和预订酒店的过程对用户来说看起来非常简单——你只需要输入你想要的目的地和日期——但具有许多同步过程的复杂系统正在 Priceline 等服务的“幕后”运行。一个简单的搜索查询会触发与世界各地各种酒店、航空公司、数据库和预订系统的一系列交互和连接。

例如,搜索酒店以预订纽约某个地方的房间会同时向酒店系统和各种中介机构发出多达 500 个请求。考虑到成千上万的用户可以同时在系统上搜索酒店,Priceline 和其他类似聚合商的主要困难是管理这种实时发生的请求和连接的复杂矩阵。这是我们的超级英雄 Java 通过允许服务快速有效地从世界各地的数据库接收信息以响应这些请求来节省时间的地方。就 Priceline 而言,该公司对 Java 的忠诚度如此之高,以至于 Priceline 北美分部的首席信息官 Michael Diliberto 曾指出,Java 是公司的“一种生活方式”,他们可以

没有 Java,一些全局服务无法成功组织

至少以我们习惯看到它们的形式。所以,如果我们从全球的角度来看这一切,我们可以说整个现代世界都离不开 Java。

自己判断:如今谁愿意不通过便捷的应用程序而是以老式的方式叫出租车,大声尖叫并在人行道上挥手?如果应用程序可以为您完成所有这些工作,谁会依次打电话给每家酒店以寻找可用房间?还有谁能想出比“Netflix and chill”更方便的借口来引诱你的爱人呢?

改变我们生活的服务和应用程序是由 Java 开发人员编写的。而这仅仅是个开始。事实上,创新的可能性是无穷无尽的,对可扩展性、灵活性和全球影响力的需求只会越来越大。