Встречается на 2% собеседований по Python
Зачем нужен Singleton
Singleton — это паттерн проектирования, который гарантирует, что у класса есть только один экземпляр, и предоставляет глобальную точку доступа к нему.
Зачем:
- Контроль доступа к общему ресурсу (например, конфигурации, логгеру, соединению с БД).
- Избежание дублирования инициализации (экономия памяти).
- Глобальный доступ к экземпляру без передачи его явно между компонентами.
Пример:
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 (один и тот же объект)Осторожно:
- Может усложнить тестирование из-за глобального состояния.
- В Python чаще используют модули (они и так синглтоны) или зависимости через DI.

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