Java:回顧2012,預(yù)測未來
這篇文章會(huì)講述 2012 年發(fā)生的一些大大小小事件,并且對 2013 年進(jìn)行一點(diǎn)預(yù)測。有些僅僅只是猜測而已….好吧,我只能說我邪惡的一面已經(jīng)暴露出來了。
多的就不說了,我們來看看 2012 年發(fā)生的關(guān)于 Java 的一些事情。
2012 – 回顧
對于 Java,JVM 和社區(qū)而言,2012 年是動(dòng)蕩的一年。James Governer(RedMonk 的分析師)說過“2012 是 Java 發(fā)展的第二個(gè)階段的曙光”。
Java 進(jìn)入云計(jì)算(這次是來真的)
基于 Java/JVM 提供的云平臺在 2012 年成為了現(xiàn)實(shí),它帶來了很多新的 PAAS 和 IAAS 產(chǎn)品。Cloudbees,JElastic,Heroku, Joyent, Oracle 現(xiàn)在只是眾多云平臺中的 5 個(gè)而已。對于作為開發(fā)者的你而言,這意味著什么呢?好吧,這意味則你有更多的選擇,并且可以花很少的成品來使用不同的云空間。我強(qiáng)烈建議你在空閑的時(shí)候試用一下這些產(chǎn)品(你只需要花費(fèi)幾分鐘的時(shí)間就可以創(chuàng)建一個(gè)免費(fèi)賬號),然后來看看這些東西到底是什么。
與之相反的是,這個(gè)領(lǐng)域還缺少一個(gè)行業(yè)標(biāo)準(zhǔn),盡管 JEE8 承諾會(huì)改變這個(gè)現(xiàn)狀(假設(shè)提供商們都參與的話)——但是在接下來的幾年里你還是需要仔細(xì)考慮鎖定某一個(gè)平臺。如果你比較關(guān)心如何讓任意的服務(wù)/代碼能夠在不同的平臺上運(yùn)行的話,那么我推薦你去看看 jClouds 的 API。
誠然,很多提供商在充分利用 JVM 的時(shí)候都是非常謹(jǐn)慎的,尤其是對于多客戶共享的問題,同樣還有垃圾回收和在虛擬環(huán)境上的性能問題。有些公司,譬如 Waratek 和 jClarity (免責(zé)聲明:我是它們的 CTO),提供了緩解這些問題的方案。
Java社區(qū)的繁榮
雖然有很多主流媒體報(bào)道稱“開發(fā)者漸漸離開 Java 平臺”或者“Java 已死”,但是 Java 的社區(qū)依舊很繁榮?,F(xiàn)在的 Java User Groups (JUGs) 的數(shù)目比以前多了很多,它們由來自世界各地的超過 400,000 的開發(fā)者組成。
尤為引人注目的是它們其中的一個(gè),倫敦 Java 社區(qū)( London Java Community),它贏得了很多獎(jiǎng)項(xiàng),其中包含 Duke s Choice 大獎(jiǎng)以及年度最杰出 JCP 成員(分享該獎(jiǎng)項(xiàng)的還有 SouJava——巴西最主要的 JUG)。
世界級的 Java 巡回會(huì)議,例如 JFokus,Devoxx 當(dāng)然也包含 JavaOne,舉辦的次數(shù)越來越多,而且門票都是提前售罄。除此之外,千人左右的規(guī)模的區(qū)域性會(huì)議,也保持的很好。
Oracle 的 Java Magazine 也發(fā)行的很好,訂閱者的數(shù)量已經(jīng)超過了 100,000。Java 的堅(jiān)定的支持者,例如 JaxEnter,Coderanch 和 Javaposse 的讀者的數(shù)量也在不斷增長。
OpenJDK
OpenJDK 在 2012 年做了一個(gè)影響深遠(yuǎn)的改革,現(xiàn)在一個(gè)新的記分卡制度可以讓這個(gè)更加壯大的社區(qū)能夠?qū)ι鐓^(qū)的管理,開發(fā)和透明度進(jìn)行很好的反饋。
2012 年,加入 OpenJDK 的個(gè)人和組織的數(shù)目已經(jīng)破紀(jì)錄了。特別值得一提的是,移植到 ARM 處理器以及在圖形卡(graphic card)上運(yùn)行 Java(Project Sumatra)這兩個(gè)項(xiàng)目都是今年的亮點(diǎn)。
Java Community Process (JCP)
Java Community Process(JCP),Java 標(biāo)準(zhǔn)的主要社區(qū),也還是生機(jī)勃勃,有大量的新注冊用戶,競爭非常激烈。除了處理商標(biāo),工業(yè)生產(chǎn)和 Java 的授權(quán)等重要商業(yè)問題外,在技術(shù)方面關(guān)于 Java 規(guī)范請求(Java Specification Request-JSRs)的主題也被重新關(guān)注起來。特別值得一提的是,新的采納一個(gè) JSR(Adopt a JSR)的規(guī)劃是被 JCP 強(qiáng)力支持的。
Java 和 JVM
JVM 一直都在通過 OpenJDK 進(jìn)行快速發(fā)展——加入到 Java 8 里的 Java 增強(qiáng)提議(Java Enhancement Proposals——JEPs)的數(shù)量非常大。Jigsaw 的退出很讓人失望,不過相比較缺乏大量的廠商支持和大量的技術(shù)工作要做而言,這個(gè)決定是很明智的。
JEE / Spring
JEE7 的進(jìn)展也非常順利(而且很快就會(huì)發(fā)布),它給 Java 開發(fā)者帶來了處理現(xiàn)代 web(JSON,Web Sockets 等等)的標(biāo)準(zhǔn)。當(dāng)然,很多開發(fā)者都在已經(jīng)在使用 SpringSource 的 API 套件,不過在規(guī)范層面得到支持會(huì)更好。
快速 Web 開發(fā)
基于 Java/JVM 的 web 快速開發(fā)框架最終得到了它們應(yīng)有的肯定。類似于 JBoss 的 SEAM,Spring Roo,Grails,Play 等框架給 Java 開發(fā)者類似于 Rails 和 Django 等框架的開發(fā)體驗(yàn)。
Mechanical Sympathy
2012 年的一個(gè)焦點(diǎn)是 Mechanical Sympathy(Martin Thompson 在他的博客上杜撰的)?,F(xiàn)在趨勢已經(jīng)改變了,我們必須要關(guān)心多核的機(jī)器和虛擬化的系統(tǒng)。Java 開發(fā)者需要開始考慮 Java 和 JVM 如何和底層的平臺和硬件進(jìn)行交互的問題了。
專注于性能的公司,例如 JClarity,一直在構(gòu)建一些工具來幫助開發(fā)者理解這個(gè)復(fù)雜的領(lǐng)域,這樣的話,開發(fā)者就可以放心地把書架上的硬件手冊都拿下來了。
2013 – 預(yù)測未來
對于未來的預(yù)測往往是很有趣的,現(xiàn)在我們來看看一些對于 2013 年的預(yù)測!
Java8 會(huì)按時(shí)發(fā)布
Java 8 支持 Nashorn,Lambda,加上對于 ARM 處理器的支持,將會(huì)給那些在 web 和移動(dòng)開發(fā)前沿的開發(fā)者帶來更多的機(jī)會(huì)。我預(yù)計(jì) Java 8 會(huì)很快被廣泛采用(會(huì)比 Java 7 快不少)。不過,由于 IOS 和 Android 設(shè)備上沒有 JVM,還是會(huì)減少一部分采用量。
Java在云端的商業(yè)化
2013 年將會(huì)是 Java/JVM 在云端商業(yè)化的一年——很多和多租戶和內(nèi)存管理的問題都會(huì)消除,并且一個(gè)豐富的 SASS 生態(tài)系統(tǒng)會(huì)開始慢慢形成。
那些允許企業(yè)把自己內(nèi)部的 Java 應(yīng)用搬到云端的組織將會(huì)是商業(yè)上的贏家。
在這個(gè)領(lǐng)域,我們也會(huì)見證一些大的廠商兼并一些有技術(shù)實(shí)力的小公司的例子。
OpenJDK
OpenJDK 會(huì)通過繼續(xù)保持真正的開放,通過使用基于 JIRA 的公開的問題追蹤,以及一個(gè)分布式的對所有開發(fā)者可用的構(gòu)建和一個(gè)優(yōu)秀的 code review 和 patch 系統(tǒng)。
Oracle,IBM 以及其他的主要提供商都積極主動(dòng)把它們自己內(nèi)部的測試套件公開出來,捐獻(xiàn)給這個(gè)項(xiàng)目,讓大家共同受益。
JVM語言和其他語言
多虧新增的靜態(tài)編譯以及改善的 IDE 工具,Groovy 將會(huì)復(fù)活。特別是 Grails 將會(huì)成為一個(gè)更加吸引人的快速開發(fā)框架,并且它會(huì)給中等規(guī)模的 web 應(yīng)用帶來相當(dāng)不錯(cuò)的性能提升。
Scala 會(huì)一直使人保持興奮,不過它只會(huì)在小團(tuán)隊(duì)里獲得成功。Clojure 會(huì)繼續(xù)在小的細(xì)分領(lǐng)域里保持自己的地位。Java 會(huì)繼續(xù)幫助它們在實(shí)際數(shù)量和占有率上持續(xù)增長。
一個(gè)隨機(jī)的預(yù)測是JRuby會(huì)誘惑那些想利用 JVM 的性能和可擴(kuò)展性的 Rails 開發(fā)者。
英文原文: Java Code Geeks,翻譯:ImportNew