SOLID設計原則

  • 単一責務の原則(Single Responsibility Principle)
    • すべてのオブジェクトは唯一の責務を持たなければならない。すなわち,実行することはただひとつでなければならない。
  • 開放/閉鎖の原則(Open-Closed Principle)
    • クラスは拡張に対しては開いて(Open),修正に対しては閉じて(Close)いなければならない。
  • Liskovの置換原則(Liskov Substitution Principle)
    • 派生クラスは親クラスの置換として使用可能でなければならない。なおかつ,同じ振る舞いをしなければならない。
  • インターフェイス分離の原則(Interface Segregation Principle)
    • 使用しないインターフェースへの依存をクライアントに強制してはならない。
  • 依存関係逆転の原則(Dependency Inversion Principle)
    • 具体的な実装よりも抽象に依存するべきである。

.NETにおけるSOLID設計原則とデザインパターン