2 つのサービス モードがあるとします。
ICommonInterface
-action1()Mode1Service は ICommonInterface を継承します Mode2Service は
ICommonInterface を継承します
どちらも同様の機能を備えているため、共通のインターフェイス (ICommonInterface) があります。では、ICommonInterface の実装を提供する最善の方法は何でしょうか?
1) 構成を優先する場合、これは純粋に継承ではありません。共通のロジックは、別のヘルパー クラスになります。Mode1Service と Mode2Service は、共通の契約に従い、これらのヘルパーを呼び出して実際の実装を提供する必要があります。
- ヘルパー クラスは個別に使用できる必要はありません。
2) 継承により、両方のモード サービス クラスによって継承される共通のインターフェイスを継承する AbstractBaseModeService が作成されます。繰り返しますが、Mode1Service と Mode2Service には、共通のインターフェイスとは別に独自のインターフェイスがあります。
コードの再利用性を提供するだけですが、継承の方が優れていると思います。そのような場合の処理方法に関するアイデア。