public interface IDoSomething
public class ClassA : IDoSomething
public class ClassB : IDoSomething
public class ClassC : IDoSomething
いくつかのクラスによって実装されたインターフェイスがあります。また、一部のデータを解析してからこれらのオブジェクトの新しいインスタンスを作成するコードブロックもあります。今は、どのオブジェクトを使用するかを決定する大きなswitch文がありますが、より良い方法が必要です。インターフェイスを複数回実装するためのベストプラクティス
インターフェイスを実装し、クラスをコード化し、コードをリファクタリングする必要がない新しいクラスを作成できるようにしたい(switchステートメントに大文字小文字を追加するなど)。
このようなものを実装するためのベストプラクティスは何ですか?ここで
は私の現在の(安っぽい)switch文は次のようになります。
switch (flag)
{
case 1:
return new ClassA();
case 2:
return new ClassB();
case 3:
return new ClassC();
default:
return null;
}
あなたは辞書を使うことができます.. 'dict = new Dictionary> {{1、()=> new ClassA()}}'そしてあなたのメソッドは+エラーチェック/ –
Rob