Возможный дубликат:
Что плохого в синглтонах?
Понятно, что многие шаблоны дизайна могут в некоторых случаях подвергаться насилию, и, как всегда, мама всегда говорила: "Слишком много хорошего не всегда хорошо!"
Я замечаю, что в эти дни я много использую Синглтоны, и я беспокоюсь, что я могу злоупотреблять шаблоном дизайна сам, и все глубже и глубже погружаюсь в привычку к плохой практике.
Мы разрабатываем приложение Flex, которое имеет довольно большую иерархическую структуру данных, хранящуюся в памяти, когда пользователь работает над ней. Пользователь может загружать, сохранять, изменять и обновлять данные по запросу.
Эти данные централизованы с помощью класса Singleton, который объединяет несколько объектов ArrayCollections, Arrays, value и некоторые другие собственные переменные-члены, открытые через getters и seters.
Чтобы получить ссылку на наши данные из любого места приложения, мы делаем весь метод метода Model.getInstance(), и я уверен, что все знакомы. Это гарантирует, что мы всегда получаем одну и ту же копию данных, так как при проектировании мы говорили, что только один экземпляр разрешен для существования в течение срока службы приложения.
Из этого централизованного хранилища данных нам легко, например, отменить свойства измененных событий и может иметь несколько компонентов пользовательского интерфейса, которые ссылаются на центральные данные, обновлять их отображения, чтобы отразить произошедшие изменения данных.
До сих пор этот подход был эффективен и оказался очень практичным для наших обстоятельств.
Тем не менее, я нахожусь в том, что при создании новых классов я немного преувеличиваю. Такие вопросы, как класс должен быть Singleton, или, если он скорее управляется каким-то другим способом, например, например, используя factory, например, иногда становится немного сложным, с некоторой неопределенностью.
Где я рисую линию с одиночными точками? Есть ли хорошее руководство для принятия решения о том, когда использовать синглтоны и когда следует держаться подальше от них.
Кроме того, может ли кто-нибудь рекомендовать хорошую книгу по шаблонам дизайна?