他社ベンダー主導のAdoptOpenJDKや、Eclipse FoundationのJakarta EEへの現状評価は
――サポートについてですが、各社のJDKによってサポート期間や内容が異なり、ユーザーの選択が迫られる中、LTSバージョンも含め今後無償で使い続けたいというユーザーにはAdoptOpenJDK[7]のような新たな選択肢も提示されてきています。これらの新しいJDKの提供という動きについてはどのようにとらえていますか?
注
[7] AdoptOpenJDK:IBMやAzul Systemsなどがスポンサードするコミュニティで、OpenJDKのバイナリ(実行可能ファイル)を提供する。
まず、サポートと一口に言っても種類があります。AdoptOpenJDKはバイナリの提供を行いますが、障害や性能に関する問い合わせ対応のようないわゆるサポートは行いません。
OSSや趣味のレベルで開発しているプロジェクトであれば、商用サポートがなくとも問題ないケースもあると思います。ただ、高い信頼性が求められるエンタープライズのアプリケーションであればそうはいかないでしょう。それがOracleの提供するサポートであっても、他社のものであっても、商用サポートそのものは必須であると思います。
その上で、どこからサポートを受けるかを検討する際には、OpenJDKに対して誰が最も貢献しているかを見るのが良いと思います。こちらの図を見てください。
Java 11に対する各社の貢献度を定量化した図。青が全体に対するOracleの貢献の比率
(出典:Building JDK 11 Together)
私たちはこれまでの長い間、非常に信頼性のあるJDKを提供してきており、またJavaの将来に対しても多大な投資をしてきましたので、選択肢のトップには私たちがいると思っています。また、商用サポートにOracleを選択していただくことで、私たちはさらにJavaの将来に投資ができるようにもなるでしょう。
――では、最後の質問です。これまでお話をうかがったことで、リリースモデルの変更によりJavaの進化のサイクルが速まり、ユーザー側としても柔軟なバージョンアップが可能であることを理解しました。ただ、これまでのお話はJavaの基本機能であるJava SEに限った話であると思います。昨年Eclipse Foundationに移管が決まった、拡張機能であるJava EE(Jakarta EE)については、まだ移行に時間がかかっており、現在のところは進化以前の状態で留まってしまっている印象です。
加えて、Java SEはJCPによる仕様策定が継続するため、管理団体(仕様策定団体)も両者で異なってしまい、SEとEEの道が大きく分かれてしまった状態に思えます。進化速度と管理団体、この2つのねじれは、今後のJavaの進化を妨げる懸念はないでしょうか。
Java EEをJakarta EEとしてEclipse Foundationへ移行する件は、できるだけスムーズにいくよう進めてはいるものの、今はまだ移行期であり、進化のペースがどうなるかは現時点で見えないというのが実情です。今後誰が関わり、またどのようなことを貢献していくかによって変わってくるでしょう。
私のグループはJava SEに関する作業を担当していますが、Jakarta EEが進化していくことは嬉しく思っています。ただ、Java SEの上に載せるアプリケーションは他にもたくさんあります。我々が重要だと認識しているのは、まずJava SEが進化し続けること。そして、それによりJakarta EEを含むJava SEを使ったエコシステムの進化を継続させていくことです。
インタビュー総評―Javaはその安定性を保ちながら、より幅広いプラットフォームへ
新しいリリースモデルについて発表されたJavaOne 2017から1年。あの場で発表されたLTSと非LTSという概念や6か月ごとの定期リリースという新たな運営方法は、浸透にまだ時間がかかっているようです。今回のキーノートでのアナウンスで、本記事を含め世界各国で話題として拡散されていき、正しい理解の促進が期待できるように思います。あと1年くらいで理解が落ち着くのではという予測もありましたので、来年のキーノートでは、より未来の華やかな話題が盛り込まれることをユーザーとして期待しましょう。
Georges氏が列挙したようにJava 9以降のフィーチャーはたくさんあり、話題を集めているものも目立ちます。ツールも増え、言語仕様そのものも使い勝手向上の工夫が凝らされているので、技術者としてはできるだけ追従したいところです。一方で、Java 8を使い続ける選択肢も考慮し、トライアルを推奨するが強制はしないという姿勢もうかがえました。この方針により、古くから高い互換性を保ってきたJavaの信頼性はこれからも継続されていくように思います。昨年のリリースモデル変更のアナウンス時点ではそういった詳細が見えず、Javaがどうなっていきたいのか判断がつきにくかったのですが、エンタープライズ系とWeb系の需要のどちらもサポートされる柔軟な体制が見えたことで、特にJavaを採用する日本企業からは安心する声が増えるように感じました。
インタビュー内で質問したAdoptOpenJDKを含め、採用しうるJDKの選択肢が増えている中、「商用サポート」と「OpenJDKへの貢献度」という尺度を提示したOracle社の見解。これは、私たちがそれぞれの立場により、どのJDKを選択すべきかを判断する際の参考になるものだったと思います。このインタビューを終えてから原稿を書いている間にも、IBMによるRed Hatの買収や、AWSから発表された独自のJDK「Amazon Corretto」といった、今後の選択肢に影響しうるニュースが次々と発表されました。変化の激しいこの時代、自分たちのビジネスや企業戦略について意思決定していくことと同様に、JDKも柔軟に選択していくことが重要となるでしょう。
Jakarta EEについては、仕様策定団体も変わり、Java SEと対で語られる存在でなくなりつつあるという印象を得る回答であったように思います。見方を変えれば、Spring FrameworkやMicroProfileといったその他のフレームワークや、KotlinやScalaのようなJava仮想マシン上で動くJVM言語などを含めた幅広いプラットフォームとしての役割。それを満たすために、それらの言語から求められる俊敏な速度で進化していくのが今後のJavaである、と期待できるとも言えるでしょう(なお、Jakarta EEの状況については、近々また別の記事で詳細をお届けする機会も予定しています。そちらもお楽しみに)。
さて、レポート最終回となる次回では、Java以外をテーマに行われた2つのキーノートの詳細や、カンファレンスに参加した日本勢の活躍についてお届けします。こちらも特別インタビューを含む盛りだくさんの内容を予定しておりますので、ご期待ください。
