“枯れた言語”だろうが何だろうが「Javaしか勝たん」理由今こそ「Java」な“これだけの理由”【第1回】

「Java」はもう古いし、注目すべきことなど何もない――そう考えているのであれば、認識を改めるべきだ。実はJavaには“わくわく”することが絶えず生まれている。古くて新しいJava。その魅力を探る。

2023年05月27日 16時30分 公開
[Darcy DeCluteTechTarget]

 プログラミング言語および開発・実行環境「Java」は決して新しくなく、むしろ“枯れた”技術だと考える人は少なくない。実際にはJavaは変化を止めておらず、開発者にとって興味深い話題を生み出し続けている。開発者にとってJavaは、いつだってエキサイティングだ。今からでもJavaに向き合う価値があると言える、幾つかの理由を紹介しよう。

理由1.進化し続ける「Java SE」

 2023年3月、OracleはJavaの仕様群「Java Platform, Standard Edition」(Java SE)に基づいた、開発・実行環境「Oracle JDK」のバージョン20(Oracle JDK 20、通称「Java 20」)を提供開始した。Oracle JDK 20は、Java SEのバージョン20(Java SE 20)に準拠する。同社はOracle JDKの新バージョンを、半年ごとに提供する計画を立てている。

 Oracle JDK 20はLTS(長期サポート版)には該当しない。原稿執筆時点では「Oracle JDK 17」(通称「Java 17」)が最新のLTSとなる。次のLTSに該当する「Oracle JDK 21」(通称「Java 21」)は2023年9月登場の見込みだ。

 「20」は記念碑的な数字であると共に、Oracle JDKおよびJava SEの着実な進化を物語る。試験段階にある機能を含む、Java SE 20の主な特徴を以下に挙げる。

  • 「Scoped Values」の試験的導入
    • Scoped Valuesは、スレッド(一連の処理)内や異なるスレッド間で共有できる不変データ。
  • 「Structured Concurrency」(構造化された並行性)の改良
    • Structured Concurrencyは、異なるスレッドで実行する複数のタスクをまとめて扱う仕組み。Java SE 19で試験段階の機能として登場し、Java SE 20ではまとめたタスク間でScoped Valuesを共有できるようにした。

理由2.“企業向け”を極める「Jakarta EE」

 非営利団体Eclipse Foundationの「Jakarta EE」は、Javaの企業向け仕様群だ。2022年9月、同団体はJakarta EEのバージョン10(Jakarta EE 10)を公開した。技術の進化や企業ニーズの変化を踏まえながら、Jakarta EEはバージョンを重ね続けている。以下に、Jakarta EEの主な仕様を示す。

  • Jakarta Contexts and Dependency Injection(CDI)
    • プログラム中のオブジェクト(データと操作をまとめたもの)同士の依存関係を管理しやすくする仕様。依存関係は、オブジェクトが別のオブジェクトを必要とする関係を指す。
  • Jakarta Messaging(旧Java Message Service)
    • メッセージ(アプリケーション間連携のためのデータや処理要求)の送受信に関するAPI(アプリケーションプログラミングインタフェース)の仕様。
  • Jakarta Faces(旧JSF:JavaServer Faces)
    • Webアプリケーションの開発に必要な各種コンポーネントの仕様。
  • Jakarta Servlet(旧Java Servlet)
    • 動的なWebページを生成するサーバプログラム(サーブレット)の仕様。
  • Jakarta Server Pages(旧JSP:JavaServer Pages)
    • Webページに埋め込んだJavaプログラムからサーブレットを生成する仕組みの仕様。
  • Jakarta Security(旧Java EE Security)
    • 認証・認可といったセキュリティに関するAPIの仕様。
  • Jakarta Mail(旧JavaMail)
    • メールの送受信に関するAPIの仕様。

 開発者がJavaに関心を寄せるべき理由は、もちろん他にもある。次回は、3つ目の理由を紹介する。

TechTarget発 エンジニア虎の巻

米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。

ITmedia マーケティング新着記事

news058.jpg

Z世代が旅に求める「令和的非日常」とは?
JTBコミュニケーションデザインと伊藤忠ファッションシステムが、Z世代の旅に関する意識...

news094.jpg

電通が「AI×クリエイティブ」の強みを生かしたビジネスコンサルティングサービスを提供開始
電通は「AI×クリエイティブ」で企業の事業やサービスの開発を支援する新サービス「AIQQQ...

news053.jpg

「docomo Ad Network」 高LTVユーザーのみに広告配信ができる顧客セグメントを追加
D2Cは顧客生涯価値が高くなることが見込まれるセグメントを抽出し、新たなセグメント情報...