2009-03-17 20 views
3

Ich versuche, ein Designmuster zu finden, das ich verwenden kann, um die Konstruktion einiger Objekte zu vereinfachen.Auf der Suche nach einem kreativen Designmuster

Basierend auf einem eingehenden Parameter, einer benutzerdefinierten Klasse, werde ich verschiedene Erben aus der Klasse System.Windows.Forms.Control erstellen.

Wenn die benutzerdefinierte Klasse beispielsweise eines ihrer Mitglieder auf 'ChkBox' gesetzt hat, möchte ich, dass meine Klasse eine System.Windows.Forms.CheckBox zurückgibt, oder wenn das Mitglied 'List' ist, möchte ich meine Klasse gib eine ComboBox zurück.

public CustomClass() 
{ 
    FieldType type; 
} 

und

GetControl(CustomClass type); 

Die gemeinsame Sache ist, dass alle Klassen Ich möchte alle Kontrolle haben zu schaffen, wie es Basisklasse ist. Vor diesem Hintergrund stelle ich mir vor, dass es einen Weg gibt, die Mitglieder der Basisklasse nur an einem Ort zu platzieren.

Kennen Sie irgendein Entwurfsmuster, das ich verwenden kann, um dieses zu lösen?

Antwort

3

Sie können Factory-Methode Muster Absicht des Factory-Methode Muster verwenden, ist eine Klasse Entwickler definieren die Schnittstelle für das Erstellen eines Objekts zu lassen und gleichzeitig die Kontrolle zu behalten, welche Klasse zu instanziiert.

Für weitere Hilfe sehen Sie "Head first design pattern" Kapitel-4.

Verwandte Themen