Javaを習得するべく、Spring Bootを触ってみたので理解したことをまとめてみます。
目次
- Spring Bootとは
- Spring Bootのメリット
- Spring Bootのデメリット
Spring Bootとは
Spring Bootとは、Microsoftが提供しているオープンソースのJavaフレームワークです。Springと外部ライブラリを利用して複雑な設定の手間を省いてくれるのが魅力です。SpringというのはSpring Frameworkの略称で、こちらは2003年にリリースされています。2014年にリリースされたSprint Bootでは複雑なMXL設定ファイルの用意が不要になったり、機能がより充実したことから使いやすいと評判です。さらに、MVCモデルを採用しており、効率よく開発を進めることに特化したフレームワークです。
※MVCモデル
Model View Controllerモデルの略。プログラムをModel、View、Controllerの3つの役割に分けて作ることで作業の効率性や保守性をあげようというソフトウェア設計モデル。
Spring Bootのメリット
Spring Bootのメリットに、拡張機能や自動設定が多い点が挙げられます。Spring Bootには、
というプロジェクト作成用のクイックスタートジェネレーターがあり、ここに必要な設定を入れることで、プロジェクト作成に必要な言語設定や依存関係を作成することができます。
依存関係にはウェブ開発のためのSpring Webや、JavaのアノテーションライブラリであるLombokなど様々な種類があります。
使いたいものを指定し、Spring Initializr上で「EXPLORE」を選択するとその依存関係を使用するために必要なコードを生成してくれるので、必要な個所をコピーして自分のコードに貼り付けることで簡単に依存関係の指定ができます。
他の例としては、HTMLを使用する際にはHTML生成用のテンプレートエンジンであるThymeleafが便利です。サーバーから受け取ったデータをテンプレートに当てはめて動的に文字を作成してくれます。また、これによりUIとロジックを分けて作業でき、returnにHTMLを直接書く必要もありません。ThymeleafもSpring InitializrのDependenciesから選択できます。
Spring Bootのデメリット
Spring Initializrは依存関係を設定するのに便利ですが、Spring系統のフレームワークに利用されている依存関係の注入(DI: Dependency Injection)という概念がそもそも複雑で難しいため、これを理解するのにコストは必要です。おわりに
プログラミングについては初心者で、環境構築や設定ファイルの準備が大変そうというイメージがありましたが、効率良くコーディングするための様々なツールがあるのだと学びました。これからも色んなツールを試しながら、プログラミングを学んでいきたいと思います。