Springバージョンアップのメリット・デメリット
Springをバージョンアップすれば、サポート期間が延長になり、関連するOSSの最新バージョンへの対応も増える。また次のバージョンアップもしやすくなる。一方デメリットもある。ソースコードや設定の変更が必要になる。大きいものだとJava EEからJakarta EEへの変更、プロパティファイルのマイグレーション、非推奨コード対策、またSpring Frameworkアップグレードに伴う制約強化対策も必要になる。
コードや設定の変更ではテストが不可欠だ。回帰テストなどの対策を講じておかないとテスト工数が負担になってしまう。だからこそ最新バージョンへの移行をためらう理由になるのだが、脆弱性を放置するリスクや数段飛ばしで移行する時の難易度の高さも考慮しておくべきではないだろうか。バージョンの移行には工数もかかるが、佐藤氏は「CI/CDやDevOpsの取り組みなど開発体制を見直すきっかけになれば、デメリットも前向きにとらえられるのではないでしょうか」と話す。
ここまで話してきたSpring Bootは3.0がメインだったので、より新しいバージョンの新機能も触れておこう。現行の最新安定バージョンSpring Boot 3.1だと、Testcontainers(アプリケーションが依存するサービスのコンテナを素早く開始できる)やJava 20互換がある。また現状プレビューとなっているSpring Boot 3.2だと、アーリーサポートではあるもののJDK 22サポートが盛り込まれている。
ここからは少し視点を変えて、開発者が最新技術情報を習得するのに役立つものを紹介しておこう。まずはVMwareが提供するSpring Academyだ。その名が示すようにSpringのスキルアップを図るためのオンライントレーニングコースとなる。有償版は年間約300ドルですべてのコンテンツにアクセスできる。無料版もある。無料版では、登録さえすれば一部のコンテンツにアクセスできる。まずはサインアップしてどんなコンテンツがあるか見てみるといいのではないだろうか。
他にもVMwareのディストリビューターとなるSB C&Sでは、DevOpsやアジャイルの実現に必要なツールなどを提供している。例えば「DevOps-ABC」はピープル、プロセス、テクノロジーに着目し、ITの変化への組織対応力を高めるアジャイル短期体験パッケージとなっている。「ピープル」では組織やマインドセットの変革や関係者の相互理解、「プロセス」ではビジネスとITの相互理解、アジャイルな文化やプロセス、「テクノロジー」ではVMware Tanzuを利用した開発と運用の相互理解が盛り込まれ、これらを5日間で疑似体験できるのが特徴だ。
またSB C&SのパートナーであるカサレアルからはSpring 2.7から3への移行トレーニングも提供されている。例えば「<速習>Spring Boot 3へのマイグレーション」は1日間のコースとなっている。こちらはSB C&Sでも取り扱っている。
さらにSB C&Sでは「DevOps Hub」を通じてSpringをはじめ、DevOpsに関する最新の製品情報や技術情報を幅広く発信している。こちらも要注目だ。
あらためてSpringのOSSサポート切れを前にして、アップデートをするかどうかについて考えてみたい。現状で満足していれば「現行バージョンのままでもいいや」と思えるかもしれない。そこにSB C&S佐藤氏は「それはあくまで現状の話です」と釘を刺し、次のようなメッセージを呼びかけた。
「数年先を見越し、アップデートについて組織全体で検討していきましょう。先の新機能紹介を通じてアップデートが楽しみと思えてきたのではないでしょうか。サポート切れをチャンスととらえ、開発をより楽しくするために前向きにアップデートに取り組んで行きましょう」
最後に、VMwareの渡辺氏は次のように呼びかけた。
「Spring Frameworkが生まれてから20年、そしてSpring Bootはもうすぐ10年になります。日本においてもコミュニティの力に支えられて、多くの企業でご活用いただいています。一方、Springは枯れた技術かというと、たとえば人工知能機能を組み込んだアプリケーションの開発を効率化することを目的とした『Spring AIプロジェクト』が立ち上がっているように、開発者の効率を高めるための取り組みを継続しています。
また、日本でも多くのお客様が利用されているSpring Boot 2.7系に関しては、商用サポート期間をさらに延長し、2025年8月までとしています。
Springをすでにご活用の方、また、まだ利用されていない方もSpringの魅力に触れていただきたいと思います」
Spring・Java最新情報の資料ダウンロード
本記事で紹介しているSpringバージョンアップのメリット・デメリットを解説した資料のほか、JavaやTanzuに関連したセミナー資料をダウンロード可能です。下記ページよりご覧ください。
Springセミナー動画を視聴する
本記事にて紹介されたセミナー「Java進化論とSpringの今後」(2023年9月15日開催)の様子を動画で視聴できます。下記ページよりお申し込みください。
Spring商用サポートについて相談する
Spring Boot/Frameworkを使用したシステムをご利用の方や、JDKのアップデートをご検討の方は、DevOps Hubお問い合わせフォームからのご連絡をお待ちしています。