ООП I холивар на тему Синглтонов

790
.
AlkatraZ
╭∩╮ (`-`) ╭∩╮
Если Вы глянете на сайте самого РНР, в той части где написано про патерн Синглтон увидите красным цветом предупреждение:
Внимание
Паттерн Синглтон является одним из наиболее противоречивых паттернов.

---
Поверьте, я очень много перечитал всяческих материалов и видел множество примеров реализации. Но что интересно, ИМЕННО ПРИМЕРОВ, практической реализации, где синглтон действительно был нужен, я почти не видел.
---
Вопрос:
Кто нибудь мне может доказать, что патерн синглтон имеет право на жизнь, или это отстой, который кроме как для развлечения и упражнения для мозга не имеют никакой практической ценности.

В нашем холиваре я буду оппонентом, который будет доказывать, что синглтон не нужен, вы доказывайте НА ПРАКТИЧЕСКОМ ПРИМЕРЕ моменты, где он действительно нужен. и будем подсчитывать результат. Докажу свою правоту я - мне балл, докажете Вы - вам балл.

Счет:
Аффтар: 1
Оппоненты: 0
.
AlkatraZ (24.12.2011/21:10)
В нашем холиваре я буду оппонентом, который будет доказывать, что синглтон не нужен, вы доказывайте НА ПРАКТИЧЕСКОМ ПРИМЕРЕ моменты, где он действительно нужен. и будем подсчитывать результат.
Атлична! С кем будим спорить?
.
╭∩╮ (`-`) ╭∩╮
L!MP (24.12.2011/21:19)
Атлична! С кем будим спорить?
Со мной гг.
В первую очередь хотелось "ударов" от тебя, как от любителя синглтонов гг
.
что это такое?
.
╭∩╮ (`-`) ╭∩╮
Vynderkind (24.12.2011/21:20)
что это такое?
Одно извращение от американских гуру программирования.
.
AlkatraZ, Да я в курсе всех минусов синглтонов
Использовал их (именно в прошедшем времени) потому что это самое легкореализуемое и понятное решенее проблемы обеспечить глобальную доступность "звёздных" обьектов.
Справедливости ради, я использовал его в тех классах которые действительно должны быть в едином экземпляре (запрос/ответ приложения, конфигурация).
.
AlkatraZ
╭∩╮ (`-`) ╭∩╮
L!MP (24.12.2011/21:27)
AlkatraZ, Да я в курсе всех минусов синглтонов
Что интересно, в большинстве случаев, и модное слово "фабрика" тоже можно было оспорить, ибо реально нужно очень редко, а я лично вообще стараюсь этого избегать. Фабрика наследует большинство деццких болезней Синглтона.
1) Фабрика - статический класс, который на выходе передает тебе объект.
2) Этот объект останется в памяти до конца выполнения скрипта, то есть, ты не можешь сделать unset(объект класса) если он тебе больше не нужен и ты хочешь очистить память.
---
Да, но первый +1 я уже заработал гг
.
forever young
Где Газеновский вариант со счетчиком "Мине.. ну вы поняли"
.
AlkatraZ, Впринципе все обвинения инкреминируемые синглтону справедливы и для любой статики.
А высвободить память от обьекта в синглтоне (ибо статика работает в контексте класса, а не обьекта) можно так: self::$_instance = null;
.
AlkatraZ (24.12.2011/21:31)
Да, но первый +1 я уже заработал гг
Это когда?
Всего: 30