アプリケーションの3層アーキテクチャ
#設計 #設計原則  
改めて整理するアプリケーション設計の基本
3層アーキテクチャのアプリケーションサーバ内で動くプログラムの構造
https://scrapbox.io/files/632f7be739ee6a001d39971c.png
アプリケーションアーキテクチャ > プレゼンテーション層
アプリケーションアーキテクチャ > ビジネスロジック層
アプリケーションアーキテクチャ > データアクセス層
やり取りする相手を制限する事で処理の流れや依存関係を理解しやすくする
1. ユーザはプレゼンテーションを介してシステムへの操作を行う
2. プレゼンテーションはビジネスロジックとのみやり取りを行う
3. ビジネスロジックはデータフェッチのためにデータアクセスを呼び出す
4. データアクセスーでの結果をビジネスロジックに返す
5. 上記の結果をプレゼンテーション層で加工しユーザへの表示を行う
実際にはレイヤにとらわれない横断的関心事が出てきたりもする
アプリケーションレイヤ
3層で済む場合が少ないので、総称してレイヤードアーキテクチャと呼ぶこともある