2009-05-14 8 views
2

Ich habe eine Singleton-Klasse, die von Castle initialisiert werden muss? Ich bin ein kleiner Neuling im Schloss. Ich habe im Schloss nach Singleton gesucht und ich habe festgestellt, dass die Einstellung des Attributs "Lifestyle" der Komponente "Singleton" ausreichend erscheint. Aber in diesem Fall scheint es, dass ich die Klasse nicht in "Singleton Pattern" implementieren muss. Einfach nur Klassendefinition für meine Klasse scheint in Ordnung zu sein.Wie löst Castle Singleton-Objekte auf?

Ist Burg meine Klasse als Singleton zu mir selbst ich definiere es als eine normale Klasse? Oder ich vermisse etwas?

Antwort

5

Nein, Sie haben vollkommen recht - der Container wird Ihre Klasse beim ersten Mal instanziieren, und von diesem Moment an wird die Instanz in Ihrem Container gespeichert.

Bleib weg von dem Singleton-Muster - es ist böse! :)

(Nein, ernsthaft - es gibt sehr wenige Fälle, in denen die Implementierung eines Singletons wirklich notwendig ist ... und wenn Sie einen IoC-Container verwenden, müssen Sie niemals Singletons mit statischen Instanzen implementieren, was ernsthaft ist verletze dein Design, indem du deine Klassen an diese statischen Instanzen koppelst)

+0

Danke für deine Antwort. Ich stimme dem Fall zu, wenn Singleton böse ist! :) –

+0

Amen. Völlig einverstanden. –