レイヤーとは、ソフトウェアにおけるオブジェクト指向分析設計において、他のモジュールに対するリンク時のモジュール依存関係が同一のセットを持つクラス群を指す。言い換えれば、レイヤーとは類似の状況下で再利用可能なソフトウェアコンポーネント群である。プログラミング言語においては、レイヤーの区別はソフトウェアモジュール間の「インポート」依存関係として表現されることが多い。

レイヤーはしばしばツリー構造の階層として配置され、レイヤー間の依存関係がリンクとして存在する。レイヤー間の依存関係は、継承、、または関係であることが多いが、他の種類の依存関係も使用されることがある。

階層化は多くの書籍で説明されているアーキテクチャパターンである。例えば「パターン指向ソフトウェアアーキテクチャ」Pattern-Oriented Software Architecture - A System of Patterns 。

関連項目 抽象化レイヤー 多層アーキテクチャ Shearing layers

出典