Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
У событий часто множественные получатели, и они предполагают подписку на них. 11.04.08 16:09 Число просмотров: 2168
Автор: HandleX <Александр М.> Статус: The Elderman Отредактировано 11.04.08 16:18 Количество правок: 2
|
Явно или неявно у событий — подписка.
Четыре основных параметра сообщений:
1) получатель
2) селектор (ЧТО за событие).
3) аргументы
4) ответ.
На сообщение предполагается ответ. К примеру, вызов функции это типичная посылка сообщения, вплоть до VOID в С, когда это процедура, и ответ вот так вот вырожден -)).
У событий три основных параметра:
1) подписчики
2) селектор
3) аргументы.
Поскольку подписчиков может быть МНОГО, сигнал о событии не предполагает ответа на него, хотя через аргументы можно добится ответов посылкой сообщений в событии.
Ещё есть конечно критерии — синхронность/асинхронность, обработка ошибок при доставке и проч, и тут есть простор для фантазии реализаторов.
Славен смолток своей реализацией сообщений и событий, хвала ему! ;-)
Там любой объект может генерировать события, и любой объект может подписаться на уведомления о генерируемых событиях одной строчкой кода. К примеру вот так:
someObject when: #someEvent send: #onSomeEvent to: self.
Вуаля. Некий объект (который self) будет теперь получать уведомления о некоем событии #someEvent, происходящем в someObject, через посылку сообщения #onSomeEvent себе. А посылка сообщений в смолтоке это базис, как функция в С. Хотя я не знаю, почему она так в С называется — видимо отцы-основатели С хотели как-то отделить его от смолтока -))
Такое вот моё ИМХО, всем удачи! -))
|
|
|