![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Как-то я не врубался во вред синглтонов - пока не пришлось рефакторить одну и ту же апликацию, разнесённую по двум платформам методом копи-пейста. Всякая собака ссылается на синглтон. Будто нельзя в параметрах получить (di, т.е.)
Так я о чём? Да вот: синглтон класса - это примерно как поименованная общая область. Вот вам имя, вот вам инстанс, и делайте вы с этим что хотите.
Тьфу.
Так что осознал, да. Синглтоны не то что зло, а большая глупость, имеющая причиной отсутствие дизайна. Десяток синглтонов - и вот вам помойка. В добавок к которой возникает священное знание: чтобы сделать то-то и то-то, надо взять три таких-то синглтона (и передать их друг другу, во).
Так я о чём? Да вот: синглтон класса - это примерно как поименованная общая область. Вот вам имя, вот вам инстанс, и делайте вы с этим что хотите.
Тьфу.
Так что осознал, да. Синглтоны не то что зло, а большая глупость, имеющая причиной отсутствие дизайна. Десяток синглтонов - и вот вам помойка. В добавок к которой возникает священное знание: чтобы сделать то-то и то-то, надо взять три таких-то синглтона (и передать их друг другу, во).
no subject
Date: 2010-02-11 01:11 am (UTC)С такими же минусами и отсутствием плюсов.
(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2010-02-11 03:15 am (UTC)Так или иначе всегда оказывается какой-нибудь сервис из серии "а вот как бы мне тут получить reference на что-то такое очевидное, но без передачи параметров?"
(no subject)
From:no subject
Date: 2010-02-11 09:28 am (UTC)(no subject)
From:(no subject)
From:no subject
Date: 2010-02-11 10:30 pm (UTC)А вообще-то синглтон нужен, скажем, для описания конфигурации. Ну или где у нас логи лежат, такие вещи (тоже конфигурация). В каком-то смысле аспекты? (Могу путать, аспекты не знаю толком.)
(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From: