(Untitled)

Mar 17, 2009 16:34

Джедайский способ делать синглтоны в С# (если кто вдруг не видел):

class SomeType
{
private static SomeType _instance;
public static SomeType Instance { get { return _instance ?? (_instance = new SomeType()); } }
}_Winnie C++ ColorizerКстати, если делаете синглтон, то не забывайте сразу же менять модификатор конструктора на private. Меня эта ( Read more... )

Leave a comment

Comments 2

(The comment has been removed)

dalesays May 4 2009, 17:43:37 UTC
Может ты и прав, синглтоны всё-таки "зло". Но я если честно не вижу ничего плохого в том, чтобы например пользоваться вещами вроде DebugPanel.Instance.Write("Nice debug message");

Можно, конечно, через все тиеры параметром конструктора передавать инстанс, но, имхо, это изврат. Тем более что бывают ситуации, когда родительский класс этим объектом не пользуется, но всё равно должен принимать его параметром, чтобы отдать ребёнку.

Ну и ещё в защиту синглотонов, если объект stateless, то никакого вреда от его "глобальности" нет. Во всяком случае я этот вред придумать не могу :)

Reply

dalesays May 4 2009, 17:45:39 UTC
"stateless" не правильное слово в этом контексте, но я думаю ты понял мою мысль :)

Reply


Leave a comment

Up