http://psilogic.livejournal.com/ ([identity profile] psilogic.livejournal.com) wrote in [personal profile] psilogic 2005-11-07 11:40 am (UTC)

[ Ну если брать в качестве примера ту реализацию, которую вы привели в стёртом комменте -- то до правильной ей очень далеко. ]

[ Во-1ых не закрыты конструктор копирования, деструктор и оператор присваивания. ]

Конструктор закрыт

[ Во-2ых никак не определён порядок уничтожения синглтона. ]

Вот потому то деструктор вообще не написан - его реализация зависит от конкретного случая. Если надо, чтобы уничтожался он овнером, то одно, если по счетчику ссылок - другое и т.п. Аналогично с конструктором присваивания.

[ потому что вы забыли выполнить присваивание в getInstance().]

А что в коде, составленному после чтения болтовни по паттернам, я бы ни в коем случае не опачатался бы? :) Так же точно опечатался бы - уж такая работа, что опечатки считаются в порядке вещей.

[ В-4ых - а почему именно так? ]

А почему не так? Работает - и ладно.

[ Ведь можно вместо проверки указателя на null использовать статические переменные -- или класса, или функции. ]

Можно. Можно вообще написать еще 10 вспомогательных классов и красивенькую иерархию в розе нарисовать :) Но это если платят за строки, а не за сроки :)

[ А что начинает твориться, когда есть несколько зависимых синглтонов... ]

А что начинает твориться? :)

Вы так и не ответили на мой вопрос. Вот ввели понятие "синглтон", описали. КАК это помогает производственному процессу? Вы сказали про грабли - на КАКИЕ грабли мешает наступать и почему?

[ Наоборот, во вступлении прямым текстом пишут, что это не так. ]

Ну и зачем новые названия для старых понятий? Что дают новые слова??

Post a comment in response:

This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting