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