IT用語帳

SOLID原則

SOLID Principles

そりっどげんそく

オブジェクト指向設計の5つの基本原則。単一責任の原則(S)、開放閉鎖の原則(O)、リスコフの置換原則(L)、インタフェース分離の原則(I)、依存性逆転の原則(D)。保守性・拡張性の高い設計を実現するための指針。
アプリケーション設計 > オブジェクト指向設計

関連キーワードの用語

SAカプセル化

オブジェクト内部のデータ構造や実装の詳細を隠蔽し、外部からはインタフェース(公開メソッド)を通じてのみアクセスさせる仕組み。情報隠蔽により、内部実装の変更が外部に影響しない独立性を実現する。

SAオブジェクト指向設計

データとそれに対する操作をオブジェクトとしてまとめ、オブジェクト間のメッセージパッシングによりシステムを構成する設計手法。カプセル化、継承、ポリモーフィズムを基本原理とし、再利用性と保守性の向上を目指す。

SA継承

既存のクラス(スーパークラス)の属性やメソッドを引き継いで新しいクラス(サブクラス)を定義する仕組み。コードの再利用性を高め、is-a関係を表現する。多重継承を避け、インタフェースの継承を推奨する設計が一般的。

SA抽象クラス

直接インスタンス化できず、サブクラスで実装すべき抽象メソッドを定義するクラス。共通的な処理を定義しつつ、具体的な振る舞いをサブクラスに委ねる。インタフェースとの使い分けが設計のポイントとなる。

SAコンポジション(委譲)

クラスの機能を再利用する際、継承ではなく他のクラスのインスタンスをメンバとして保持し処理を委譲する設計手法。「継承より委譲を優先する」という設計原則に基づき、クラス間の結合度を下げ柔軟性を高める。

SA凝集度と結合度の設計原則

良い設計はモジュール内の凝集度を高く、モジュール間の結合度を低くすることを目指す原則。高凝集・低結合のモジュール構成は、変更の影響範囲を限定し、テスト容易性と再利用性を向上させる。構造化設計とオブジェクト指向設計の双方で重要。