複雑化したSpringをわかりやすく初心者向けに解説 | [書評]SpringFramework4プログラミング入門
JavaプログラマであればSpringは必須知識になったかな
Java黎明期からのプログラマであれば地道にコーディングしていたアプリケーションは、Strutsが登場してからフレームワークを使用すれば良いぞ、という流れになっていきました。
フレームワークの一つ、Springの基盤は、DI(Dependency Injection, 依存性注入)と、AOP (Aspect Oriented Programming, アスペクト指向プログラミング)です。特にAOPは、既存のコンポーネント拡張に効果があり、必須知識です。
Springは、Frameworkとして、DI/AOPを基盤とし、Webアプリケーション開発プラットフォーム、データベースアクセスプラットフォームとして整備されました。それにより、Javaベースのアプリケーション開発に大きな効果を与えるようになりました。
Javaプログラマであれば、入門書で良いので、実務で使用する前にSpring Frameworkを理解しておいて欲しいと思います。
本書の構成
本書は、Spring Frameworkから「6つの武器」を厳選したとしています。
1.Spring Tool Suite(STS) 統合開発ツール
2.Spring DI(DIフレームワーク)
3.Spring AOP(アスペクト指向プログラミング)
4.Resource & Properties(Spring全般のコア技術)
5.Spring Data(JDBC/JPAによるデータベースアクセス)
6.Spring Boot(高速開発フレームワーク)
150ページぐらいまでは、STSの使い方が書かれています。STSはEclipseベースのツールのSpring専用開発環境です。JavaプログラマであればEclipseに馴染んでいる人は多いと思いますが、STSならでわの記述も多々ありますので、必要なところだけでも良いので読んでおきましょう。
私の注目ポイント
DIについては、簡単にBeanを使ってDIとはどういうものかを説明してくれた後、本命のWebアプリケーションの中でSpringのDIをどう使うかを説明してくれています。ここで@Autowiredアノテーションの重要性を教えてくれます。
AOPについてもDIとの違いを含めて解説してくれています。ですので、もともとDIもAOPも知らない人でも困らないようになっています。
リソースとプロパティについては、Javaプログラマであれば知っている人が多いでしょうが、Springならでわの意義が説明されており、なるほどと思います。また、Spring Dataについては、JPAをしっかり抑えて欲しいです。業務アプリケーションによっては非常に重要な機能で有用です。
おまけではないですが、Spring Bootにより開発も少し書かれています。こちらはご参考程度とし、Spring Bootの専門書を読まれた方が良いでしょう。
最後に
全体を通して、Spring Frameworkの入門書と使い方重視、実際にちょろっと使ってみることに重きを置いて、あまり詳細な内容まで突っ込んではいません。しかし、本書の趣旨としてはそれで良いと思います。