Событийно ориентированное программирование
От: _NN_ www.nemerleweb.com
Дата: 19.07.14 04:53
Оценка: 20 (3)
Кто знает почему сделали паттерн подписки и отписки от событий примерно так:

SomeEvent += MyHandler;
SomeEvent -= MyHandler;

SomeEvent.addEventListener(MyHandler);
SomeEvent.removeEventListener(MyHandler);


Тут ведь получается, что нужно хранить этот 'MyHandler' только для того, чтобы отписаться от события.
Т.е. его нельзя сделать анонимной функцией, локальной переменной и т.д.

Эти мысли привели к более разумному применению как например в Rx, где подписка возвращает объект через который можно отписаться.
MySubscription = SomeEvent.Subscribe(MyHandler)
MySubscription.Dispose();


Даже в старом WinAPI был второй вариант.
Кто же все таки посчитал, что первый подход лучше ?
http://rsdn.nemerleweb.com
http://nemerleweb.com
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.