1. Spring Frameworkとは
学習メモ
Springの歴史
- Spring自体は2004年に1.0がリリース。AOP/DIは1.xから導入されてる
- Springが巨大になりすぎたのでSpring Bootのプロジェクトが2014年にスタートした。
Springのプロジェクト
- 覚えておいたほうが良さそうなもの:Spring Security, Spring Data, Spring Cloud, Spring Boot
- Spring Security: Authentication/Authorizationを簡単に実現するフレームワーク。CSRF対応機能などWebセキュリティに必要な機能をだいたい持ってる。
- Spring Data: RDBやNoSQL, KVSなどデータストアに簡単にアクセスするためのプロジェクト。ElasticSearchやRedisなどにも対応。
- Spring Cloud: 分散環境でCloud Nativeなアプリ開発をするためのフレームワーク。構成管理、サービスディスカバリ、サーキットブレーカーなどなどを簡単に構築するのが得意。Cloud FoundryとつなぐならSpring Cloud Connectors。MQやるならSpring Cloud Bus。
- Spring Boot: Springと違って面倒なConfigのBean定義やServletの設定、サーバへのデプロイが不要になった。
用語集
- AOP:Aspect Oriented Programming
- DIコンテナ (IoCコンテナ):Dependency Injection
学んだこと
- 手軽にやるならSpring Boot、ちょっと凝ったことをやるならSpring Security/Data/Cloudあたりが重要
感想・疑問点
- 何はともあれ使ってみないと疑問も何もないので次回以降使っていく