「Spring3入門」発刊、おめでとうございます!

技術評論社より、Spring3入門の見本を送っていただきました。著者の長谷川さん、大野さん、土岐さん、ありがとうございます!
http://gihyo.jp/book/2012/978-4-7741-5380-3

私は沖縄県内の同業様向けJava教育で、これまで「Spring入門」「Spring2入門」を使った普及活動を行ってきました。そのため「Spring3」対応本を切望していましたが、いよいよ登場ということで嬉しく思います。週末に一気に読破し、本書がSpring3全体の構成を知るのに最良のテキストだと、改めて感じました。特に Spring MVC と Spring Web Flow の解説は充実しており、Struts以外の選択肢をよく知らないという開発者にアピールできる内容になっていると思います。Security や Batch, Integration の言及がなかったのはちょっと寂しいですが、それがなくてもこの厚さです。著者の皆様、本当にごくろうさまでした。

Spring3への期待

先日、VMware社で行われた"SpringOne 2GX 2012"の報告会に参加してきました。SpringSourceチームはOSSプロダクトの開発と、VMwareによるビジネスの支援という二つの顔を持つようになったので運営は大変でしょうが、Rod Johnsonが抜けたあとのSpringの目指す方向性が発信されたことは良かったと思います。私の理解では次のとおりです。

  • SpringframeworkのコアはJava7,Java8に対応させていく。
  • DIとAOPを両輪としたアーキテクチャそのものは変わらないが、エンタープライズ分野で注目されている最新動向は積極的に取り込んでいく。具体的にはソーシャル(SNS)、クラウド、スマートフォン対応などである。
  • NoSQLと呼ばれる非RDBとの接続も進めていく。Springを利用することでRDB/NoSQLのいずれも利用しやすいという環境を提供する。
  • Java EE の一部仕様を取り込んでいく。JPAやJCacheなど。つまりSpring中心のアーキテクチャで、部分的にJavaEE仕様を使うという形を支援する。
  • Java EE と重なる技術も遠慮なく?アピールする。非同期メッセージングやキャッシュ、運用支援など。また Java EE によるクラウド対応は 7 では見送られたが、Spring陣営はCloudFoundryで、すでに実稼働している。
  • コアのフレームワーク群は今後もOSSとして公開していく。

一方で、Google社やSalesforce.com社との協業は当面、なさそうです。CloudFoundryアーキテクチャを採用するIaaS事業者(この採用によって彼ら自身がPaaS事業者になる)を増やすことで、Spring開発者を安心させたいと考えているのでしょう。日本ではNTTグループが採用を表明しており、期待がかかります。
http://www.publickey1.jp/blog/12/ntt945cloudncloud_foundrypaas.html

Java EE にあって Spring にないものもあります。その一つはプレゼンテーション技術です。Java EE は JSF によって簡単にリッチな業務画面を構築できるとアピールしています。Spring はこれまでの JSP/JSTL をはじめ、他のプレゼンテーション技術との接続性を売りにしている性格上、自社特有のプレゼンテーション技術はもっていません。Java 開発者が JSF を採用したいと思えば Java EE 体系に一元化することが自然でしょう。VMware としては、買収した WaveMaker を活用したいという意向はあると思いますが、Spring開発者にとっては選択肢の一つであり、そういう関係で良いと思います。
http://itpro.nikkeibp.co.jp/article/NEWS/20110310/358182/

個人的には今後、HTML5 による Web プレゼンテーションと、REST API によるサーバ接続方式に注目しています。Javaの世界で「これ」というものが登場するかどうかは大きなポイントになるでしょう。

こういった分析から、JSF を採用するなら Java EE へ、それ以外のプレゼンテーション技術を使い続けるなら Spring ベースで、ということをおおまかに考えています。いずれにせよ Struts は早めに次世代の技術に移ることになりますので、Spring MVC も有力な選択肢の一つです。その際、開発者が容易に技術を習得するために日本語による解説は必要であり、本書の登場が望まれていました。Java EE はすでに日本語の解説本が登場しており、こちらも人気があります。Spring3解説本がこのタイミングで出てきたことで、引き続き国内の開発者にアピールできるのではないかと思います。