Java EE Advent Calendar 2017 を振り返って

この記事は Java EE Advent Calendar 2017 の最終日です。

昨年私は Payara Advent Calendar 2016 を作成し、25 日のうち 19 日を担当するというほぼ「全部俺」状態でやっており、Java EE Advent Calendar 2016 でも 2 日ほど担当しました。今年、気が付いた時に Java EE 関連の Advent Calendar がなく、Payara 関連の記事だけで 25 日すべてを埋める余裕もなかったため、全部ひっくるめて Java EE Advent Calendar 2017 として作成しました。私が Payara 関連の記事 (しかも Dev ではなく Ops に近いテーマ) ばかり出したのも、そのあたりが関連しております。

振り返ると、結局また私が 25 日のうち 19 日を担当してしまったわけですが、私がどうしても埋められなかった残り 6 日に助け舟を出してくださった方々―紅月さん (@koduki)、田中さん (@TTakakiyo)、菊田さん (@kikutaro_)、多田さん (@suke_masa) そして岩崎さん (@HirofumiIwasaki) さんにはこの場を借りて御礼申し上げます。

さて、私が作成する Advent Calendar の最終日では恒例となった、カテゴリ別の記事のまとめです。今年の Advent Calendar を振り返りながら、逆引きとしても使えるようにまとめてみました。

Java EE 8 関連 (新機能)

今年は Java EE 8 がようやくリリースされましたので、それに関する記事は当然出てきます。とは言うものの、Java EE 8 は目新しい機能が少なく、Advent Calendar が Java EE 8 一色で染まるまでは至りませんでした。全体像をつかむには岩崎さんの「Java EE 8で何が変わったのか」から読み始めると良いでしょう。また、私の「MVC のこれまでとこれから」と多田さんの「Java EEにMVCはなぜ必要なのか」を読み比べると、同じ仕様に対して対極の意見が存在し、それに対して標準仕様としての折り合いを付けながら Java EE がアップデートされている姿を垣間見ることができると思います。

Java EE 全般 (バージョン非依存)

Java EE 8 よりも前 (主に Java EE 7) の話題もまだまだ健在です。あまり古い仕様は最新の Java EE 環境で使えない場合もありますが (プルーニング=不要な仕様を次のバージョンで非推奨にして 2 世代のバージョンで完全に Optional にする仕様整理、の実施も影響します)、標準仕様の使命として可能な限り限り互換性を保つようなアップデートを行いますので、長期間に渡って使い続けられる安心感はあります。ただし、開発したアプリケーションは放置せずこまめにアップデートしてくださいね。

MicroProfile

Java EE 8 の大幅な遅延に業を煮やしたベンダーと JUG (Java ユーザー・グループ) が勝手に立ち上げた、Java EE 7 のサブセットをベースとしたマイクロサービス向けの仕様セットが MicroProfile です。昨年に初版の MicroProfile 1.0 がリリースされ、今年 7 月 (本当であれば 5 月の JJUG CCC 2017 Spring で私が MicroProfile のセッションを行っている最中にリリースされる予定でしたが間に合いませんでした) に MicroProfile 1.1、9 月には MicroProfile 1.2 とアップデートされ、この年末年始に MicroProfile 1.3 がリリースされる見込みです。当初だんまりを決め込んでいた Oracle が MicroProfile 入りを表明したのも大きなニュースでした。

Payara

Payara の Ops に関する話題も、私からいくつかご紹介しました。特に「Payara のセキュア管理における JMX 監視」と「クラスタ化された Payara Server のアップグレード方法について」は、私が Payara Support Engineer としてお客様からお問い合わせをいただいたケースをもとに、広く一般向けにご利用いただけるようアレンジして記事としたものです。

その他

その他雑多な記事です。すべて私の戯言ですが、「Java EE 8 ドキュメント翻訳に関する提案」についてはご一読いただきたいです。日本語情報の不足は国内における Java EE の最新情報が伝わりにくくなっている一因となっています。かといって、ドキュメント翻訳のスポンサーの当てがない我々にとっては、できるだけ多くの人達が各々の隙間時間を使って少しずつ翻訳したものをマージしていくほかありません。一度に全量を訳すのは不可能ですが、まずリソースをリストアップして、その中から優先順位を決めて (MicroProfile 関連の需要が多いでしょうか) 進めていくほかありません。必然的に参加者が多くなるため、実際に作業をする人、作業分担を調整する (仕切る) 人、全体を押さえる (責任を取る) 人、と役割を決めてプロジェクトとして組織的に進めていくことが不可欠だと考えています。

まとめ

来年も機会が得られれば Java EE Advent Calendar を実施したいと思います。それまでの間に Java EE がより良い方向へと進むことを願うばかりです。

それでは皆様、よいお年をお迎えください。