Встречается на 1% собеседований по Python
Какие дизайн паттерны знаешь
В Python часто используются следующие паттерны:
1. Singleton – гарантирует единственный экземпляр класса:
python
class Singleton:
_instance = None
def __new__(cls):
if not cls._instance:
cls._instance = super().__new__(cls)
return cls._instance2. Factory Method – делегирует создание объектов подклассам:
python
class Button:
def render(self): pass
class WindowsButton(Button):
def render(self): return "Windows style"
class Dialog:
def create_button(self) -> Button: pass
class WindowsDialog(Dialog):
def create_button(self) -> Button:
return WindowsButton()
text
**3. Observer** – уведомляет подписчиков об изменениях:
```python
class Subject:
def __init__(self):
self._observers = []
def attach(self, observer):
self._observers.append(observer)
def notify(self):
for observer in self._observers:
observer.update(self)Также популярны Decorator, Strategy, Adapter, Facade, Proxy. Паттерны решают типовые задачи проектирования, но важно не злоупотреблять ими без необходимости.

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