オブジェクト指向コンポーネントで、クラスに使用できる実装が1つだけで、そのクラスが他のコンポーネントに「公開」されていない場合でも、インターフェイスを用意して、代わりにインターフェイスを操作することをお勧めしますか?
私は「インターフェースへのプログラミング」の設計原理を十分に認識しており、それを広く使用しています。
最近、私はほとんどの場合、(可能であり、理にかなっているとはいえ)別の実装が必要になることはないことを観察しています。常にインターフェイスを操作する結果として、アプリケーションコードにはかなりの量のインターフェイスがあり、それぞれに1つの実装しかなく、インターフェイスは一種のオーバーヘッドのように見えます。
代わりに、具象クラスを操作して、2番目の実装が必要な場合にのみインターフェースを導入することが望ましいですか?とにかく、最近ではIDEを使用してインターフェイスを抽出するのは簡単です。また、新しいインターフェイスが導入されたときに、古い具象クラスへの参照を変更して、代わりに新しいインターフェイスを使用することができます。
どう思いますか?