Встречается на собеседованиях • сегодня
Какие дизайн паттерны знаешь
В 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
интервью вопросы и ответы