当前位置 > 主页 > 行业简报 >


Java将死?这些证据将驳斥此谣言…

2016-07-27 09:39

  Java将死的谣言传了一年又一年,然而,从目前的市场特征上来看,Java仍然还生机盎然,而且,它活得更好了!在2015年的TIOBE程序语言排行榜中,Java蝉联了年度排行榜冠军。相比起2014年,它又增加了5%的市场份额,已经把其它语言甩得远远的了。



  上图中,程序语言排行榜所参照的PYPL指数是基于程序语言的教程在谷歌搜索中的占比,其中Java的搜索量占据了所有程序语言的23.9%。


  虽然在过去两年有许多原因使得Java迎来了伟大复兴(安卓开发的爆发式增长,Java 8的出现,Spring社区特别是Spring Boot的成长),但是很多人认为未来的发展潜力决定了程序语言的命运,这也是很多人对Java持悲观态度的原因。但是,事实是怎么的呢?让我们来看看。


  JVM与Java生态系统


  Java虚拟机,又被简称为JVM,它能够在执行字节码时,把字节码解释成具体平台上的机器指令执行。因为JVM位于特定的硬件和操作系统之上,所以它支持Java运行在任何系统上,包括Windows、Mac,甚至是Linux上名不见经传的一些发行版上。


  JVM的一个巨大优势是它能够提供更好的兼容性和稳定性。由于你的应用程序是运行在虚拟机上而非直接运行在硬件设备上,一旦你的程序运行成功,那么意味着它能够运行在所有可安装Java虚拟机的设备之上。这一原则就是Java的格言:“Write once, run anywhere”(一次编写,到处运行,WORA),它使得Java应用程序可以适应富有弹性的底层环境变化。


  安全与可操作性


  安卓环境是研究Java固有安全性和互操作性的一个很好案例。安卓系统,占据了全球89%的手机市场,它就是使用Java开发的。由于Java支持将操作系统运行在虚拟机上,因此它不需要为每个设备进行重新编译,这提高了系统的稳定性和可用性。


  安卓所表现出来Java的另一个好处就是它与其它的JVM语言,如Scala, Groovy,Clojure, JRuby等拥有很好的互通性。你可以让应用程序构建在所选择的更具动态性的语言上,可以在需要更高效的情况下退回到Java上。


  这个巨大的安卓市场同样存在被别人利用的风险。Android + Java支持用户将不信任的应用程序运行在虚拟机上来降低该风险。而应用程序利用操作系统内核的唯一方式就是通过虚拟机实施的小缺口,这个缺口非常小,并且被定义良好的安全外壳所保护。


  产品层面上的Java


  亚马逊、谷歌、eBay以及其它大型电子商务品牌都在使用Java进行后端处理。他们选择Java的原因是Java是久经证明的可伸缩性语言。任何语言,任何后台都可以管理一小部门用户,但是Java可以可靠的处理超过2亿的用户。让我们来看看下面著名的例子:


  Hadoop


  Apache Hadoop是一套用于在由通用硬件构建的大型集群上运行应用程序的Java框架。它旨在为对大数据集的控制或处理的应用程序提供更高的生产力。现在,Hadoop已经被Facebook、Amazon、 IBM、Joost、Yahoo等大型公司运用在数据处理、分析执行以及报告生成等方面。


  Hadoop的创造者Doug Cutting曾说过:“Java在开发效率和运行性能之间提供了一个良好的平衡。开发者在这个包含了各种高质量库的简单、强大和类型安全的语言中获益匪浅。”我们把大数据、Hadoop和Java之间的关系简单概括一下:大数据离不开Hadoop,而Hadoop离不开Java。


  Twitter


  Twitter前不久因为对Java和Oracle团队的选择而获得了伟大的胜利。最初,Twitter使用的是Ruby on Rails,快速成长的Twitter很快意识到了Ruby on Rails在可伸缩性上的缺点。在2012年,越来越多的“失败鲸”(网络超载警告页面)的频繁出现使得Twitter从技术上开始转向Java。在今天,Twitter使用Java + Scala的技术,失败鲸也基本绝迹了。


  Minecraft


  Minecraft是一个非常成功的游戏,它为它的开发团队带来了丰厚的利润,并在2014年成功的吸引到被微软以25亿美元收购,而Minecraft是使用Java开发的。


  宽阔的Java社区帮助Minecraft传播制作成百上千游戏模块的方法,而同时,Minecraft也把Java介绍给了新一代的开发者。快速的谷歌搜索“making mods for Minecraft”(制作Minecraft的模块)会得到65万多个结果,其中很多的教学资源是面向12岁以下的孩子的。


  Java的未来


  去年,Oracle公司宣布预计将于2016年9月迎来Java 9的到来。这次更新的范围包括将程序语言的功能分解成一系列组件,它的目的是为了让Java变得更快更简单。Oracle的投资可以确保Java可以继续为所依赖的企业提供强大的支持,并及时应对新的开发趋势变化。


  Java和物联网


  “我相信Java的未来存在于物联网中,我很乐意看到Oracle和它的合作伙伴仍然专注于从设备到网关再到企业后端的Java完整端到端存储解决方案,成功构建这样一个物联网神话将会巩固今后20年Java的地位。这对整个行业是一个巨大的机遇,而且我认为Java也能够成功胜任。”Eclipse基金会的执行董事Mike Milinkovich这样评价道。


  Oracle的开发部副总裁Georges Saab对此意见表示赞同,“Java是一个极好的物联网技术。在上世纪90年代Java帮助解决了在物联网上桌面和客户端的许多挑战。你有许多的开发环境,你想要开发者知道系统的每个部分,了解并应用它们,而Java是为数不多的能够让你这样做的技术。”

最近开班 more>
  • 全栈开发
  • 前端基础班
  • 软件测试
  • Java大数据开发工程师
  • 云原生精英班
  • 开发课程基础班第四期
  • 开发课程基础班第三期
  • 开发课程基础班第二期
  • 开发课程基础班第一期
  • Java Web UI Python
  • CISP
  • HCIE-Datacom(HCIA,HCIP基础)
  • HCIP-Datacom(HCIA基础)
  • HCIA-Datacom(0基础)
  • HCIE-Datacom(HCIA,HCIP基础)
  • HCIP-Datacom(HCIA基础)
  • HCIA-Datacom(0基础)
  • OCM 12C
  • OCP 19C
  • RHCE 9.0
  • 脱产班
  • 脱产班
  • 脱产班
  • 脱产班
  • 脱产班
  • 脱产班
  • 脱产班
  • 脱产班
  • 脱产班
  • vip班
  • 考试计划
  • 脱产班
  • 脱产班
  • 脱产班
  • 双休班
  • 双休班
  • 双休班
  • 双休班
  • 业余班
  • 业余班
  • 10月16日
  • 9月23日
  • 9月2日
  • 9月30日
  • 8月26日
  • 10月8日
  • 9月23日
  • 9月16日
  • 9月9日
  • 随时开课
  • 9月21日
  • 10月17日
  • 9月18日
  • 9月2日
  • 11月2日
  • 10月26日
  • 9月7日
  • ——
  • 随时开课
  • 9月26日
    • 姓 名 :
    • 电 话 :
    • 课 程 :

技术交流群

  • Java大数据交流群560819979加入
  • Python技术交流群595083299加入
  • Oracle技术交流群595119011加入
  • Web前端技术交流群604697610加入
  • Huawei技术交流群482919361加入
  • Redhat技术交流群587875348加入
  • UI设计技术交流群511649801加入
  • Cisco技术交流群596886705加入
  • IT运维技术交流群605888381加入