理系学生日記

おまえはいつまで学生気分なのか

忍者TOOLS

Spring徹底入門

年末年始に Spring 徹底入門をようやく読めた。

Java の FW といえば、Spring を知っておかないともうダメみたいな雰囲気を感じはじめており、以前に買ったままずっと積読してしまっておりました。

Spring徹底入門 Spring FrameworkによるJavaアプリケーション開発

Spring徹底入門 Spring FrameworkによるJavaアプリケーション開発

Spring は、Spring MVCSpring Batch を 3 年前くらいに使っていたようなのだけれど、当時のエントリを確認するとまだ Spring が 3.1 だった頃のようだった。 今確認すると Spring Framework は既にメジャーバージョンが 5 に到達しており、隔世の感がある。

そういう時代錯誤の状況なのでなんとかせねばならんし、そもそも Spring Boot って何ものじゃい、みたいな老害っぽい状況でもあったので、なんとか時代にキャッチアップしようと思います。

Spring についての感想

Spring については、あんまり大きく変わってないんだなというのが一番の感想でした。当たり前ですが、DI、AOP まわり(Spring Core まわり)は Spring 3 の頃の知識がほぼ使える。Spring Test も大きくは変わっていないように見えました。

一方で、container configuration の方は、当時使っていなかっただけなのか、そもそもそういう機能が無かったのか覚えていないんだけれど、設定を Java で書けるというのは非常に便利なように感じました。 XML で表現できない設定を表現できるというのは良いし、Lint をかけられるし、型の安全性も担保できるし、補完もコードと同様のものが効く。XML は悪くないんだけど、何より書くのに時間がかかるから、Java で設定を記述できる世界感なのはすごく良かった。

FW 自体も疎結合になっているのはすごく柔軟そうで、ViewResolver 等、逐一 Interface が切られているので拡張もずっとやり易そうだと思いました。 Spring Security についても、MVC との統合の方法が分かりやすくて、これだったら導入しても良さそう、という感覚を得るのにすごくよかった。

書籍についての感想

徹底入門シリーズにも個人的には当たり外れはあるんですが、これは当たり。買ってすごく良かったです。

「ここは知っておかないといけないよね」という部分は押さえつつ、ThymeleafMyBatis との統合方法といった Spring という枠に留まらない記載、そして Spring Boot や Spring Security 等の関連プロジェクト等、取り上げる箇所の選定がさすが NTT DATA やなという内容。

Spring に関しては公式のドキュメントが異常に充実していて、基本的にはそこを読めば全貌が把握できるといえばできるんですが、 全体がどのようにできていて、それをどう使っていくのかの概要を俯瞰するためには非常に有用な書籍だったと思います。

あとは公式ドキュメントに目を通していきたいとおもいます。