Встречается на собеседованиях • сегодня
Что такое паттерн Singleton
Singleton — это порождающий паттерн проектирования, который гарантирует, что у класса есть только один экземпляр, и предоставляет глобальную точку доступа к нему.
Основные особенности:
- Конструктор класса делается приватным, чтобы предотвратить создание новых экземпляров.
- Создание экземпляра происходит внутри класса (обычно через статический метод).
Пример на Python:
python
class Singleton:
_instance = None
def __new__(cls):
if cls._instance is None:
cls._instance = super().__new__(cls)
return cls._instance
# Использование
obj1 = Singleton()
obj2 = Singleton()
print(obj1 is obj2) # True (один и тот же объект)Применение:
- Логирование (единый логгер).
- Конфигурация приложения.
- Подключение к БД.
Минусы:
- Усложняет тестирование (глобальное состояние).
- Нарушает принцип единственной ответственности.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы