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