10章レイヤードアーキテクチャ
レイヤードアーキテクチャは、n層アーキテクチャとしても知られており、最も一般的なアーキテクチャスタイルの1つだ。このスタイルのアーキテクチャは、シンプルさや親しみやすさ、コストの低さから、ほとんどのアプリケーションにとってのデファクトスタンダードとなっている。また、このスタイルは、システムを設計する組織にとって、とても自然な形でアプリケーションを開発できる形でもある。それは、組織はそのコミュニケーション構造をコピーしたシステムを設計するように制約されているという、コンウェイの法則(https://oreil.ly/Rb4uN)が働くからだ。ほとんどの組織には、ユーザーインターフェイス(UI)の開発チーム、バックエンドの開発チーム、ルール開発チーム、データベース管理チーム(DBA)がいる。こうした組織構造は、伝統的なレイヤードアーキテクチャの各層にうまくフィットしており、多くのビジネスアプリケーションにとって自然な選択となっている。レイヤードアーキテクチャは、暗黙のアーキテクチャアンチパターンや偶発的アーキテクチャアンチパターンといったアンチパターンにも該当する。開発者やアーキテクトが使用しているアーキテクチャスタイルを把握できていない場合や、アジャイル開発チームが「コーディングを始めたばかり」の場合には、彼らが実装しているアーキテクチャスタイルはレイヤードアーキテクチャである可能性が高い。
10.1 トポロジー
レイヤードアーキテクチャ内のコンポーネントは、論理的な水平方向のレイヤーとして編成される。各レイヤーは、アプリケーション内で特定の役割(プレゼンテーションロジックやビジネスロジックなど)を果たす。存在しなければならないレイヤーの数や種類については特に制限はないが、ほとんどのレイヤードアーキテクチャは、 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access