Встречается на 1% собеседований по Python
Какие плюсы и минусы 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)
class Observer:
def update(self, subject):
print("Обновление получено!")
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы