Java是一门通用型编程语言,由Sun微系统公司(后被甲骨文收购)于1995年推出。尽管Java已经25岁了,但仍然“宝刀未老”。
在Stack Overflow 2019年流行编程语言调查报告中,Java位居第5位,有41%的受调开发者认为Java仍然是一门受欢迎的编程语言。
stackshare.io的数据显示,大概有9028家公司在使用Java,其中包括:
这得益于Java的关键特性:
相比于ASP.NET、PHP、Python等编程语言,使用Java开发的应用程序更多,从移动应用到Web应用,再到运行在可穿戴设备上的应用。
与Python一样,Java也在大数据领域占据主导地位。各种用于处理大规模数据的框架都是用Java开发的。
Hadoop是一个使用Java开发的框架,用于在分布式环境中处理大规模数据集。Hadoop采用了主副架构模式,其中主节点负责控制整个分布式计算栈。Hadoop在需要处理和分析大规模数据的公司当中很流行。
使用Hadoop的公司包括:IBM、亚马逊、英特尔等。
Spark是另一个主要使用Java开发的大数据处理框架。Spark是一个集群计算框架,可以运行在数千台机器(分布式集群)上。Spark被用在大型的ETL、预测分析和报表应用程序中。
使用Spark的公司包括:Uber、Slack、Hubspot、Shopify等。
Mahout是一个使用Java开发的机器学习库和大数据工具,用于执行机器学习操作,比如分类、聚类和推荐。
使用Mahout的公司包括:Adobe、Facebook、LinkedIn、Foursquare、Twitter、雅虎等等。
JFreechart是一个流行的开源大数据工具,用于可视化数据,可以用它制作各种图表,比如饼图、柱状图、线图、散点图、盒状图、直方图等等。
Deeplearning4j是一个深度学习Java库,用于构建各种类型的神经网络。Deeplearning4j可以与Spark集成,运行在GPU上。
使用Deeplearning4j的公司包括:JPMorgan Chase、Wells Fargo、Interactive Brokers等等。
Storm是一个开源的分布式实时计算框架,用于处理实时数据流。一个Storm节点可以在秒级处理数百万个作业。
Storm在真实世界中的案例:
甲骨文公司表示,灵活性和流行度是IOT程序员选择Java的主要原因。
Java提供了大量的API库,可以很容易被应用到嵌入式应用程序中,所以Java适合用来进行IOT编程。相比其他编程语言,比如C语言,Java在切换平台时更加顺畅,不容易出错。从Java被用在PDA设备和早期的手机上,它就已经成为嵌入式设备的一部分。Java在可穿戴设备、电视、移动设备和其他电子设备上应用,这让它成为IOT编程的不二之选。
Java借助Android应用程序组件统治了移动应用市场,通过谷歌应用商店安装的移动应用超过了73%。超过45万个移动应用是用Java开发的,包括YouTube、Tiktok等等。
因为可移植性、可维护性、调试、可视化等诸多方面的因素,Java成了开发聊天机器人最好的工具。
IBM Watson Conversation Service、api.ai、pandorabots都使用了Java。
银行和金融公司使用AI工具进行金融欺诈和信用卡欺诈检测。Java被用来开发这些AI工具,而AI工具为欺诈检测和风险管理带来了可不预知的见解、模式和预测模型。在开发AI工具时,Java的安全性提供了额外的好处,因为它可以帮助AI系统更好地做出判断。
一些主要的银行和金融机构在欺诈检测系统中使用了Spark。
根据甲骨文网站对Java的描述,Java为快速开发、测试和部署提供了一个平台,是开发电子交易系统的一个很好的选择。超过80%的电子交易系统是用Java开发的,包括大部分FIX引擎。
Java虚拟机提供的动态运行时编译优化在很多情况下比编译型语言(如C++)具有更好的性能。官方JVM和JRockit Real Time(JRRT)虚拟机提供了很低的延迟,让交易系统运行得更顺畅。
Enlyft网站的数据显示,有500多家公司在使用JRRT,其中7%用在金融服务(比如交易系统)领域。
基于AI和Java算法开发的移动钱包,可以帮助用户在花钱时做出更智能的决策。
w3tech网站的数据显示,3.7%的网站使用Java作为服务器端编程语言。
使用Java开发的主要网站:
用于Web开发的流行框架:
World Wind是Nasa使用Java开发的一款工具,可以从卫星角度放大世界的任何一个地方。
World Wind利用了Landsat卫星图像和航天飞机雷达侦测到的地形数据,用户可以以3D的视觉体验“游览”地球。
Sun SPOT完全使用Java开发,是一个小型、无线、由电池提供动力的试验性平台,用于开发原先需要使用特定嵌入式系统的项目。
JPC是一个完全使用Java开发的x86模拟器,可以运行在任何支持Java虚拟机的平台上。它让用户可以更好地控制软件的运行环境,不管他们使用了怎样的硬件或操作系统。JPC的多层安全性为运行非安全软件提供了最安全的解决方案,是电脑病毒归档、保护机器免受恶意软件攻击或运行非稳定软件的理想选择。
据甲骨文网站透露,100%的蓝光播放器和1亿2千5百万台电视机设备使用了嵌入式Java。
Java还被广泛应用在其他方面。很多基于云的应用程序提供了PaaS服务,比如Heroku、Google App Engine。Java(AWT、Swing和JavaFX)也被广泛应用于开发桌面GUI应用程序。Java是企业软件(包括网络应用程序和Web服务)的主要开发语言,甲骨文宣称Java正运行在97%的企业计算机上。
延伸阅读:
https://www.xamnation.com/why-java-will-remain-a-dominant-language-of-the-future/
领取专属 10元无门槛券
私享最新 技术干货