Это очень популярный шаблон среди разработчиков. Суть его в том, что при объектно-ориентированном подходе операции создания объекта достаточно дорогие, а создание сложных объектов - дорого втройне. Однако практически в любом приложении требуется минимум один глобальный объект
(
Read more... )
Comments 6
предложите альтернативу? IoC/DI? для гостевой? убейтесь.
Reply
Ситуацию описал выше, как вы решите такую задачу?
Конечно, вне контекста глупо называть то или иное решение плохим или хорошим.
Про крутость "одиночки" я слышу часто и, так сказать, с некоторым пафосом.
Типо все задачи он решит, "все может" и "как ты не пользуешь этот мега-паттерн?!"...
А он вполне себе специфичен, и плохо его делать затычкой в каждой дырке.
IoC/DI, кстати, тоже.
Альтернатива проста - синглтон, фабрики, наблюдателей имеет смысл делать только тогда, когда это реально необходимо.
В этом примере я не вижу причины использования синглтона - либо ее не было, либо она умерла при эволюции кода, либо я ее не заметил.
ps> убиваться, кстати, иногда приходится - и к гостевой может быть требование, требующие наличие сумасшедшего числа точек вариации, хуков, и плагинов...
Reply
Reply
Если рассказать обо всей системы целиком, наверняка найдется другой путь, без использования PageFabrica и моя истерика будет не по теме.
вторая альтернатива, это порефакторить PageFabrica - отменить синглтон (заодно будет ясно - нужен он или нет).
Reply
Leave a comment