Паттерн Singleton

Когда применять Singleton?

Когда применять Singleton?

Довольно часто в программе некоторый объект должен быть уникальным, т.е. когда запрашивался объект этого класса, то возвращался один и тот же экземпляр. Довольно часто этот паттерн применяют для реализации соединения с базой данных, хотя это по моему мнению это не лучшый вариант. Хотя пример очеь наглядный. Представьте, что при каждом обращении к базе создается новое подключение (это очень медленная операция). Даже представить страшно, что может получиться при большом числе запросов. Поэтому очень удобно когда запрашивается данный объект-соединение – возвращать объект одного и того же соединения с базой. Примеров можно придумать еще очень много.

Как гарантировать, что у класса есть единственный экземпляр и что этот экземпляр легко доступен? Глобальная переменная дает доступ к объекту, но не запрещает инстанцировать класс в нескольких экземплярах. источник codelab.ru оригинал codelab.ru Более удачное решение - сам класс контролирует то, что у него есть только один экземпляр, может запретить создание дополнительных экземпляров, перехватывая запросы на создание новых объектов, и он же способен предоставить доступ к своему экземпляру. Это и есть назначение паттерна одиночка. оригинал источник codelab.ru codelab.ru

Нет комментариев.
Добавить комментарий
Вам необходимо включить показ изображений в браузере для того чтобы увидеть код

Дайте нам знать, что вы - живой человек. Для нас это важно!
Кликните, если плохо видно

Прежде чем высказать свое мнение, прочитайте пожалуйста: правила


Рейтинг@Mail.ru