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


Java这个小妖精为何一直占据着行业者的心

2016-10-09 14:33

  回顾过去的二十年,Java的热度一直是居高不下。Java已经取代了曾经C语言所拥有的地位,而C语言在Java开始流行之前一直是最受关注的语言。TIOBE指数也刚刚宣布2015年是Java年,而十年之前,Java就已然获此殊荣。


  Java,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。Java语言是一种可以撰写跨平台应用软件的面向对象的程序设计语言,由当时任职太阳微系统的詹姆斯·高斯林(James Gosling)等人于1990年代初开发,它最初被命名为Oak。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。Java身上有很多值 得追忆的东西,但更加令人兴奋的是Java在20年之后依然能够拥有不被取代的地位。


  那么,为什么Java能够持续的受到欢迎呢? 这里江苏万和计算机培训中心列举四条:


  1.在政治斗争中不屈不挠


  开始时,技术界从来没认为Java会成功,因为它的对手太多而且都是“土豪”。尽管如此,Java还是繁荣发展起来。那些诧异Java仍然存在的人们,一定是花了太多时间听那些对Java怀恨在心的人,而没有花时间去理解为什么Java会成功。


  微软是Java第一个面对的强大对手,因为那时MS-DOS提供了通用性,而微软看到Java是此通用性最具可能性的替代者。Redmond从一开始就对 Java恶评不断,从每个可能方面与其斗争(译注,Redmond,雷德蒙德,是微软总部所在地,此处代指微软公司)。在桌面应用方向,Java从来没有 找它需要的发展推动力,部分是因为强大的Java虚拟机启动时需要花费太长时间。尽管有些启动延时,Java应用在Window平台上还是可用的。


  Java内部的很多斗争也给它带来了巨大痛苦。IBM喜欢Java,但是一直在和Sun斗争。IBM将其开发的优秀的IDE工具称为“Eclipse”的决定,一直没被Sun的人员欣然接受。Sun也从来没像IBM那样深刻理解商业领域。


  尽管这些原因,尽管Java创造者也在Java发展中有许多失策之处,Java依然快速壮大,在服务器应用领域如鱼得水,硕果累累,在桌面应用领域满足基本业务需求。所有技术都需要在政治湍流中前行,但是Java走的更难也更远,证明了,通常,Java对许多应用都是一个优良选择。


  2、跨平台兼容性


  虽然Java并不是第一个提供跨平台兼容能力的语言,但是Java已经成为最受欢迎的(跨平台语言)。这并不是说Java是完美的——缺少的一个库或者一 个版本不匹配的库都会导致程序崩溃。你也不能把使用最新的JRE 1.7编译的需要使用大量内存的桌面程序放到一台Java ME手机上运行。Java并不是那么兼容。


  但是Sun以及现在的Oracle已经为程序可以跨平台使用做了最大的努力。当程序(不能在多个平台上)使用时,(导致这些问题的)原因通常是可以弄懂 的。如果你使用合适的Java版本,并且确保有足够的内存,那么,(程序)一般可以正常工作。Java程序员可以使用他们的桌面开发工具进行编码,并部署 到目标设备,可能是一台手机或者一台服务器。如果编译器包含了正确的库并且使用了正确的版本,代码就可以运行。这是一个很可贵的(特性)。


  3.可扩展性/性能/可靠性


  在超过20年和每年数以千计的开发者的推动和发展,Java已经成为了一个坚实的平台,可以赶上甚至超过本地代码的水准(多亏了JVM使用了动态而非静态代码解析的一些优化)。当谈及可扩展性,看看使用Java语言的一些大型企业:Twitter(抛弃了JVM的Ruby-on-Rails,因为它不再能够扩 展),Spotify,Facebook,Scalesforce,eBay,当然还有Oracle。Hadoop,Cassandra和Spark,大数据工程的基础框架,无不使用Java或者Scala并且在JVM虚拟机上运行的。如果你想要良好的拓展性和性能,Java和JVM是最好的选择。


  4.保鲜度


  在我看来这是最重要的一条。查看TIOBE统计图能够发现,2014年10月份开始,Java的受欢迎程度有了显著的提升,这刚好是在JDK8发行之后。 JDK8对Java开发者来来说有了显著的变化,它引入了Lambda表达式和Stream API。突然间Java开发者能够在不用学习一整套新语言(如Scala)的情况下以一个更加有效的方式进行开发。这些特点也使它有可能更简单地利用多核 /多处理器的机器,而不必写很多复杂的和潜在的容易出错的多线程代码。随着Jigsaw工程在为JDK 9的发布而启动, 我们会看到模块化使大企业应用程序更容易建立、部署和维护。同时在JDK10中,对于发展新的语言特性的计划已经在进行中了,比如值的类型等等。


  在最后,这是Java的优势之一:它运行所有程序,而且接受改变。如果你需要不同的功能,你可以将大部分库替换成自己的代码。语言是开源的而且灵活多变。不论语言和平台有什么限制,都可以相对轻松的解决。这意味着Java程序员继续是最具生产力的人员之一。即使相关图书不在能再占据畅销榜,软件更新也没之前频繁,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加入