В моем последнем собеседовании меня спросили, как реализовать класс, который выставляет событие и уведомляет новых подписчиков события в тот момент, когда они подписываются на это событие.
Другими словами, класс предоставляет событие для информирования подписчиков при обновлении источника данных;Многие другие классы могут подписаться на событие в любой момент времени.Когда класс подписывается на событие, он должен быть уведомлен о получении последней версии данных, сохраненных в источнике данных, но другие классы не должны уведомляться (они уже обновлены).
Они предложили мнепереопределить метод addHandler, но как мне уведомить только нового подписчика?
Есть ли какая-то особенность .net, о которой я не знаю, или мне нужно определить метод в классе подписчика, который будет вызыватьсяпри добавлении в обработчик (какой-то шаблон наблюдателя)?
РЕДАКТИРОВАТЬ: я думаю, что я не был ясен, поэтому я попытаюсь объяснить это по-другому.Предположим, у меня есть образец наблюдателя.Когда новый наблюдатель подписывает тему, он сразу же обновляется самыми последними значениями источника данных по субъекту. Позднее, когда что-то внутри источника данных изменится, субъект уведомит всех зарегистрированных наблюдателей, как обычно.Меня спросили, как сделать это с помощью .net events