Java10がリリースされました。気になる違いと今後は?




リリースから約1ヶ月。遅ればせながらJava10を使ってみました。
Java9がリリースされてから半年でバージョンアップです・・・。早すぎw

Java10の目玉

OpenJDK公式サイトによると、今回増えたのはこんなとこでした。
ふだん使ってる分には、あまり気にするアップデートではなさそう。ローカル変数がvarで宣言できるようになりましたが・・・。
個人的には推論系のなんでもあり変数は好きではないので、とくに影響なしw
結局、あまりJava9と変わってないですね。

286: Local-Variable Type Inference
296: Consolidate the JDK Forest into a Single Repository
304: Garbage-Collector Interface
307: Parallel Full GC for G1
310: Application Class-Data Sharing
312: Thread-Local Handshakes
313: Remove the Native-Header Generation Tool (javah)
314: Additional Unicode Language-Tag Extensions
316: Heap Allocation on Alternative Memory Devices
317: Experimental Java-Based JIT Compiler
319: Root Certificates
322: Time-Based Release Versioning

引用:OpenJDK公式サイト

今後のバージョンアップ

もともとver-10のときもそうですが、今後は毎年3月と9月の半年ごとにアップデートしていきます。
よって、ver-11は、2018年9月にリリース予定。
また、Oracle社は、ver-11以降、無償提供をしません。(有償提供はある)
ver-11以降、無償で使いたい方は「OpenJDK」を利用することになります。
たしかに、今までバージョンアップ間隔が長かったわけで、短期間でのアップになることは良いことです♪

気になるライフタイム

これが一番重要なわけですが・・・。

有償版のサポート

つまり、Oracle社とサポート契約をした場合は、ほぼ今まで通り長期間でサポートを受けることができます。
パッチは提供されるので安心して長期間使えます♪
Oracle Databaseのように、それなりに長期間のサポートは受けられるものと考えられます。(料金はさておきw)

無償版のサポート

半年です。しかも、最新版が出てから次版が出るまでです。(OSにRedHat Enterprise Linuxを利用している人は例外がある模様)
事実上サポートは無しに等しい状況。パッチが半年(すぐ)止まるため、最新版以外はセキュリティ上、好ましくない状況に陥ると思われます・・・。
つまり、常に最新版を使うことができないのであれば、有償版を選択する必要が出てきます。
(ただし、長期間サポート版がリリースされる噂もある模様)

気になるお値段

Oracle Databaseと同じライセンス体系です。Processorライセンス(コア数を要考慮)とNamedUserライセンス。
不用意なことは書けないので、ライセンス体系・お値段はOracle社ホームページにて確認してくださいませ。
2018/4/16現在の日本国内価格表は、次のリンクで確認できます。
価格表(Javaは4ページ目に記載あり)

今後は、クライアント用途(開発含む)では無償版。サーバー用途では有償版を使う流れになっていきそうですね。
その他、WebSphere同梱のIBM社製Javaとかも追随?するのか、気になるとこです。