回顧2017, Java有哪些重大變化值得關(guān)注?
在過去的一年中,Java 歷經(jīng)了許多變化。在今年年初,Java EE 處于一個不確定的狀態(tài),Java 9 版本也推遲了它的發(fā)布日期。在 2016 年的 JavaOne 上,甲骨文宣布了解決平臺的計劃和 Java SE 9 和 OpenJDK 9 的相關(guān)信息。
2017年6月,Java Community Process 執(zhí)行委員會投票通過了被稱為 JSR 376 的 Java 平臺模塊系統(tǒng),該平臺為 Java 9 奠定了基礎(chǔ)。
2017 年 8 月,甲骨文宣布要將 Java EE 轉(zhuǎn)移到開源陣營。一個月后,Oracle 將 Java EE 轉(zhuǎn)移到 Eclipse 基金會,Oracle 也繼續(xù)支持現(xiàn)有的 Java EE 許可證。據(jù)甲骨文公司說,遷移到 Eclipse 基金會使組織能夠采用更靈活的方式管理。
Eclipse 基金會還有許多其他開源項目和基于社區(qū)的治理方法來加強(qiáng)項目合作和快速創(chuàng)新。
2017 年 9 月,Java 9 發(fā)布了。它具有模塊化架構(gòu),而不是 Java 以前版本中的單片架構(gòu)。這樣可以在較小的設(shè)備上實現(xiàn)可擴(kuò)展性,這本應(yīng)該是 JDK 8 中應(yīng)包含的功能,但在發(fā)布時尚未準(zhǔn)備就緒。
JShell 在 Java 中增加了 Read-Eval-Print-Loop 功能,允許開發(fā)人員在編寫代碼時獲得即時反饋,這對初學(xué)者甚至有經(jīng)驗的 Java 開發(fā)人員嘗試新的 API,庫或功能都很有幫助。還有幾個其他新功能可以改進(jìn) JVM 的編譯和性能,以及增強(qiáng)核心庫。
在 2017 年 9 月的 JavaOne 上,一個名為 Java Guardians 的組織試著讓 Oracle 給 Java EE 更大的關(guān)注來向前邁進(jìn),甲骨文終于開始談?wù)?Java EE,并表示計劃在 2017 年完成并發(fā)布它。然而到了 2016 年 7 月份,開發(fā)人員仍然在等待 Java EE 更新的消息,在那期間也沒有關(guān)于 Oracle 的消息。
同樣在 9 月,Oracle 建議對 Java SE 和 JDK 發(fā)布周期進(jìn)行更改,使得版本更加靈活。它希望從 2018 年3 月起每 6 個月發(fā)布一次重要版本,Java 9 更新版本將繼續(xù)每季度發(fā)布一次,并且每三年會發(fā)布一次大版本。
在 2017 年 10 月的 JavaOne 上,提供的幾個軟件工具已經(jīng)宣布的新服務(wù)。Parasoft 發(fā)布更新了 Jtest,這是一個Java 的單元測試助手。JNBridge 發(fā)布了 Java.VS,這個插件允許開發(fā)人員在 Visual Studio 中編寫 Java 代碼。Java.VS 還有 Java 代碼編輯器,Java 項目系統(tǒng),并允許 Java 開發(fā)人員使用 VS 構(gòu)建系統(tǒng)和調(diào)試器接口的功能。