クライアントは、使用しないメソッドに依存することを強制されるべきではありません
さまざまな出力デバイスがオブジェクトを使用して表現されるオフィス空間の例を考えてみましょう
インターフェイス分離原則の前:
I多機能インターフェイス
上記の共通インターフェースを様々なデバイスに実装中
すべての機能を備えた XeroxWorkCenter クラス
HpPrinterNScanner クラスには印刷機能とスキャン機能があります
CanonPrinterクラスは印刷機能のみを持ちます
ISPの違反を特定するテクニック
インターフェイス分離原則後の:
各インターフェースは単一の責任を持ち、よりクリーンになりました。
ISP と他の SOLID 原則との関係
単一責任
インターフェースを異なるインターフェースに分離した後、IPrint、IScan などのすべてのインターフェースが単一の責任を持つようになりました
リスコフの交代
分離により、すべてのサブタイプまたは実装クラスをインターフェース参照変数に置き換えることができるため、すべてのクラス (インターフェースを実装) が Liskov 置換に従います
以上がインターフェース分離原理の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。