A
は、参照されるdllのクラスであるため、変更することはできません。それは私のDoFoo()
メソッドの中で呼び出されるメソッドFoo()
を持っています(パラメータとしてA
を取る)。高価で既にテストされているので、DoFoo()
をFoo()
を実行しないでテストしたいと思っています。"sealed"クラスの実装を置き換えます
このような状況ではどうすればよいですか?この上
私の考え:
- は
A
周りのラッパークラスを作成し、DoFoo()
にそれを渡します。ラッパークラスは、実際の実装と偽の実装を区別します。 - 拡張メソッドを使用して同じことができます。
dynamic
を使用し、空のクラスDoFoo()
を実装してください。
のためのインターフェースは何ですか?実際の方法に行くか、何もしないだけのラッパークラスで十分でしょうか?私が逃した利点はありますか? –
依存関係を減らすためのインタフェースベースのプログラミング。実際のインプリメンテーションはコンストラクタインジェクションを介して注入だから、私はインターフェイスを使用することをお勧めします。 –