-
Notifications
You must be signed in to change notification settings - Fork 3
Singleton
Sofia Kirillova edited this page Apr 30, 2017
·
1 revision
Гарантирует, что у класса есть только один экземпляр, и предоставляет к нему глобальную точку доступа.
Используйте паттерн одиночка, когда:
- Должен быть ровно один экземпляр некоторого класса, легко доступный всем клиентам;
- Единственный экземпляр должен расширяться путем порождения подклассов, и клиентам нужно иметь возможность работать с расширенным экземпляром без модификации своего кода.
- Singleton - одиночка: определяет операцию Instance, которая позволяет клиентам получать доступ к единственному экземпляру. Instance – это метод класса и статическая функция-член в C++; Может нести ответственность за создание собственного уникального экземпляра.
У паттерна одиночка есть определенные достоинства:
- Контролируемый доступ к единственному экземпляру;
- Уменьшение числа имен;
- Допускает уточнение операций и представления;
- Допускает переменное число экземпляров;
- Большая гибкость, чем у операций класса.
