ISP(The Interface Segregation Principle)
– クライアントに対して利用しないインタフェースへの依存を強制してはならない。
・インターフェイスはクライアント(使う側)の都合により変更される
→インターフェイスはそれを使うクライアントごとに分離されるべき
・インターフェイスが分離されていないと、
クライアントにサーバが依存すべきところが、
サーバにクライアントが依存してしまい、
変更のたびに全体へ影響を与えてしまう。
→依存関係の逆転が成り立たず、脆弱となる。
・太った(いろんな役割を持つ=便利な)インターフェイスにしない。
→SRP(単一責務の原則)にする
・依存をできる限り減らす。
→クラス間の結合度(Coupling)を減らす
オブジェクト指向って難しい・・・。