新人研修2024 No.45

こんにちは、ヒロイです。

外部研修25日目です。

本日から研修内容は「Spring」に入りました。
本日は概要を学びました。

SpringとはJava向けフレームワークです。
そして、フレームワークとは特定の種類のシステム開発において、開発効率を向上させる機能を提供するソフトウェアです。
Webアプリケーションの開発では「画面遷移」などは頻繁に実装する機能であり、フレームワークに落とし込むとプログラムを短く記述することができます。

Springフレームワークの特徴としてはモジュール(部品)に分割されていることが挙げられます。
必要に応じてモジュールを組み合わせることでアプリケーションの作成が容易かつ、自由に機能を拡張できます。
また、役割に応じて分割された構造(アーキテクチャ)になっていることも特徴の1つとして挙げられます。
設計の際、どのようにクラス分けをしていくかは非常に頭を悩ませます。
「柔軟にプログラムは変化をさせやすいか」「プログラムを再利用しやすいか」「変更するたびに影響範囲を限定できるか」は考慮しなければならない点です。
そういった複雑さに対応していくため、Springはドメイン駆動設計を参考に設計されています。
ドメイン駆動設計とはユーザとのやり取りやデータベースへのアクセスなどの役割をドメイン(専門領域)として捉え、その領域に注目した役割分担を主軸として設計します。
使い方を学ぶ際には役割に応じて分割された構造(レイヤ化アーキテクチャ)を意識することでSpringをより効率よく使いこなせるのだと感じました。

ご覧いただきありがとうございました。
次回のブログもよろしくお願いします。