私は現在、非常にステートフルなコンポーネントベースのAPIを開発しています。トップレベルのコンポーネントは、それぞれ約12のインターフェイスを実装します。
したがって、ストックのトップレベルコンポーネントは、複数のミックスイン実装を含み、複数のミックスインインターフェイスを実装する抽象実装のスタックの上に配置されます。
これまでのところ、とても良いです(私は願っています)。
問題は、基本機能の実装が非常に複雑であるため(5層の基本クラスに1,000行)、コンポーネントライターがインターフェイス自体を実装するのではなく、基本クラス(すべてのボイラーが存在する場所)を拡張することを望んでいることです。プレートコードはすでに書かれています)。
したがって、APIが、コンポーネントライターに拡張してほしい抽象実装への参照ではなくインターフェイスを受け入れる場合、実装者が他のコード領域で必要とされる検証を実行しないリスクがあります。
したがって、私の質問は、APIメソッドが実装するインターフェイスへの参照ではなく、抽象的な実装参照を使用してAPIメソッドをパラメーター化することが有効な場合があるということです。
この手法を使用する適切に設計されたAPIの例がありますか、それとも私は自分自身を悪い習慣に話そうとしていますか?