原創(chuàng)|行業(yè)資訊|編輯:郝浩|2016-07-26 09:24:11.000|閱讀 610 次
概述:Java將死的謠言傳了一年又一年,然而,從目前的市場(chǎng)特征上來(lái)看,Java仍然還生機(jī)盎然,而且,它活得更好了!在2015年的TIOBE程序語(yǔ)言排行榜中,Java蟬聯(lián)了年度排行榜冠軍。相比起2014年,它又增加了5%的市場(chǎng)份額,已經(jīng)把其它語(yǔ)言甩得遠(yuǎn)遠(yuǎn)的了。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
相關(guān)鏈接:
Java將死的謠言傳了一年又一年,然而,從目前的市場(chǎng)特征上來(lái)看,Java仍然還生機(jī)盎然,而且,它活得更好了!在2015年的TIOBE程序語(yǔ)言排行榜中,Java蟬聯(lián)了年度排行榜冠軍。相比起2014年,它又增加了5%的市場(chǎng)份額,已經(jīng)把其它語(yǔ)言甩得遠(yuǎn)遠(yuǎn)的了。
上圖中,程序語(yǔ)言排行榜所參照的PYPL指數(shù)是基于程序語(yǔ)言的教程在谷歌搜索中的占比,其中Java的搜索量占據(jù)了所有程序語(yǔ)言的23.9%。
雖然在過(guò)去兩年有許多原因使得Java迎來(lái)了偉大復(fù)興(安卓開(kāi)發(fā)的爆發(fā)式增長(zhǎng),Java 8的出現(xiàn),Spring社區(qū)特別是Spring Boot的成長(zhǎng)),但是很多人認(rèn)為未來(lái)的發(fā)展?jié)摿Q定了程序語(yǔ)言的命運(yùn),這也是很多人對(duì)Java持悲觀態(tài)度的原因。但是,事實(shí)是怎么的呢?讓我們來(lái)看看。
Java虛擬機(jī),又被簡(jiǎn)稱(chēng)為JVM,它能夠在執(zhí)行字節(jié)碼時(shí),把字節(jié)碼解釋成具體平臺(tái)上的機(jī)器指令執(zhí)行。因?yàn)镴VM位于特定的硬件和操作系統(tǒng)之上,所以它支持Java運(yùn)行在任何系統(tǒng)上,包括Windows、Mac,甚至是Linux上名不見(jiàn)經(jīng)傳的一些發(fā)行版上。
JVM的一個(gè)巨大優(yōu)勢(shì)是它能夠提供更好的兼容性和穩(wěn)定性。由于你的應(yīng)用程序是運(yùn)行在虛擬機(jī)上而非直接運(yùn)行在硬件設(shè)備上,一旦你的程序運(yùn)行成功,那么意味著它能夠運(yùn)行在所有可安裝Java虛擬機(jī)的設(shè)備之上。這一原則就是Java的格言:“Write once, run anywhere”(一次編寫(xiě),到處運(yùn)行,WORA),它使得Java應(yīng)用程序可以適應(yīng)富有彈性的底層環(huán)境變化。
安卓環(huán)境是研究Java固有安全性和互操作性的一個(gè)很好案例。安卓系統(tǒng),占據(jù)了全球89%的手機(jī)市場(chǎng),它就是使用Java開(kāi)發(fā)的。由于Java支持將操作系統(tǒng)運(yùn)行在虛擬機(jī)上,因此它不需要為每個(gè)設(shè)備進(jìn)行重新編譯,這提高了系統(tǒng)的穩(wěn)定性和可用性。
安卓所表現(xiàn)出來(lái)Java的另一個(gè)好處就是它與其它的JVM語(yǔ)言,如Scala, Groovy,Clojure, JRuby等擁有很好的互通性。你可以讓?xiě)?yīng)用程序構(gòu)建在所選擇的更具動(dòng)態(tài)性的語(yǔ)言上,可以在需要更高效的情況下退回到Java上。
這個(gè)巨大的安卓市場(chǎng)同樣存在被別人利用的風(fēng)險(xiǎn)。Android + Java支持用戶將不信任的應(yīng)用程序運(yùn)行在虛擬機(jī)上來(lái)降低該風(fēng)險(xiǎn)。而應(yīng)用程序利用操作系統(tǒng)內(nèi)核的唯一方式就是通過(guò)虛擬機(jī)實(shí)施的小缺口,這個(gè)缺口非常小,并且被定義良好的安全外殼所保護(hù)。
亞馬遜、谷歌、eBay以及其它大型電子商務(wù)品牌都在使用Java進(jìn)行后端處理。他們選擇Java的原因是Java是久經(jīng)證明的可伸縮性語(yǔ)言。任何語(yǔ)言,任何后臺(tái)都可以管理一小部門(mén)用戶,但是Java可以可靠的處理超過(guò)2億的用戶。讓我們來(lái)看看下面著名的例子:
Apache Hadoop是一套用于在由通用硬件構(gòu)建的大型集群上運(yùn)行應(yīng)用程序的Java框架。它旨在為對(duì)大數(shù)據(jù)集的控制或處理的應(yīng)用程序提供更高的生產(chǎn)力。現(xiàn)在,Hadoop已經(jīng)被Facebook、Amazon、 IBM、Joost、Yahoo等大型公司運(yùn)用在數(shù)據(jù)處理、分析執(zhí)行以及報(bào)告生成等方面。
Hadoop的創(chuàng)造者Doug Cutting曾說(shuō)過(guò):“Java在開(kāi)發(fā)效率和運(yùn)行性能之間提供了一個(gè)良好的平衡。開(kāi)發(fā)者在這個(gè)包含了各種高質(zhì)量庫(kù)的簡(jiǎn)單、強(qiáng)大和類(lèi)型安全的語(yǔ)言中獲益匪淺。”我們把大數(shù)據(jù)、Hadoop和Java之間的關(guān)系簡(jiǎn)單概括一下:大數(shù)據(jù)離不開(kāi)Hadoop,而Hadoop離不開(kāi)Java。
Twitter前不久因?yàn)閷?duì)Java和Oracle團(tuán)隊(duì)的選擇而獲得了偉大的勝利。最初,Twitter使用的是Ruby on Rails,快速成長(zhǎng)的Twitter很快意識(shí)到了Ruby on Rails在可伸縮性上的缺點(diǎn)。在2012年,越來(lái)越多的“失敗鯨”(網(wǎng)絡(luò)超載警告頁(yè)面)的頻繁出現(xiàn)使得Twitter從技術(shù)上開(kāi)始轉(zhuǎn)向Java。在今天,Twitter使用Java + Scala的技術(shù),失敗鯨也基本絕跡了。
Minecraft是一個(gè)非常成功的游戲,它為它的開(kāi)發(fā)團(tuán)隊(duì)帶來(lái)了豐厚的利潤(rùn),并在2014年成功的吸引到被微軟以25億美元收購(gòu),而Minecraft是使用Java開(kāi)發(fā)的。
寬闊的Java社區(qū)幫助Minecraft傳播制作成百上千游戲模塊的方法,而同時(shí),Minecraft也把Java介紹給了新一代的開(kāi)發(fā)者。快速的谷歌搜索“making mods for Minecraft”(制作Minecraft的模塊)會(huì)得到65萬(wàn)多個(gè)結(jié)果,其中很多的教學(xué)資源是面向12歲以下的孩子的。
去年,Oracle公司宣布預(yù)計(jì)將于2016年9月迎來(lái)Java 9的到來(lái)。這次更新的范圍包括將程序語(yǔ)言的功能分解成一系列組件,它的目的是為了讓Java變得更快更簡(jiǎn)單。Oracle的投資可以確保Java可以繼續(xù)為所依賴(lài)的企業(yè)提供強(qiáng)大的支持,并及時(shí)應(yīng)對(duì)新的開(kāi)發(fā)趨勢(shì)變化。
“我相信Java的未來(lái)存在于物聯(lián)網(wǎng)中,我很樂(lè)意看到Oracle和它的合作伙伴仍然專(zhuān)注于從設(shè)備到網(wǎng)關(guān)再到企業(yè)后端的Java完整端到端存儲(chǔ)解決方案,成功構(gòu)建這樣一個(gè)物聯(lián)網(wǎng)神話將會(huì)鞏固今后20年Java的地位。這對(duì)整個(gè)行業(yè)是一個(gè)巨大的機(jī)遇,而且我認(rèn)為Java也能夠成功勝任。”Eclipse基金會(huì)的執(zhí)行董事Mike Milinkovich這樣評(píng)價(jià)道。
Oracle的開(kāi)發(fā)部副總裁Georges Saab對(duì)此意見(jiàn)表示贊同,“Java是一個(gè)極好的物聯(lián)網(wǎng)技術(shù)。在上世紀(jì)90年代Java幫助解決了在物聯(lián)網(wǎng)上桌面和客戶端的許多挑戰(zhàn)。你有許多的開(kāi)發(fā)環(huán)境,你想要開(kāi)發(fā)者知道系統(tǒng)的每個(gè)部分,了解并應(yīng)用它們,而Java是為數(shù)不多的能夠讓你這樣做的技術(shù)。”
本文翻譯自,譯者:慧都控件網(wǎng)-回憶和感動(dòng)
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn