Обновить
0
0
Игорь@krs

Пользователь

Отправить сообщение
Спасибо за спасибо =)
Спасибо за исправление,
1) В том то и преимущество, что каждый обработчик разделен на две ветки: первый слушатель (именно он анализирует сложившуюся ситуацию и выдвигает приоритет обработки) и второй слушатель (в нем заключен основной функционал обработки события, например в нем генерируется дизайн для страницы). Логично реализовать обработчик «первого круга» как можно легче и все необходимые действия по обработке вынести в обработчик «второго круга». Если данный обработчик не выиграет приоритет на обработку события, то обработчик «второго круга» не выполняется вообще.
Ну и конечно все это надо обрабатывать лишь при изменении внутреннего состояния, а в общем нужно все кешировать в nosql бд
2) В принципе при возникновении событий, где требуется определить главный обработчик, обработчики «первого круга» будут лишь анализировать текущее состояние (в том числе и глобальные переменные), но не вносить какие либо изменения, эту роль может выполнить главный обработчик
Не просто так блоггеру в свое время видимо подарили его =)
Вернее модули, конечно же модули =)
Шаблоны динамически подключаемые, о конкретном кол-ве и логике вам не известно, а так шаблон подключается на событие и сам устанавливает приоритет вывода, на самом деле можно много где применить данную модель да и реализуется она достаточно быстро. Вывод дизайна, обработка шаблонных операторов, простые события (добавление пользователя, добавление комментария)…
В статье под цепочкой вызовов я понимал возможность писать код, как в jquery $a->start()->right()->step(2)->stop();
А в общем все действительно просто, назначается приоритет, кто даст больше тот и выиграл, просто как то реализовал в своем проекте данную модель, понравилась, решил поделиться, мб кому нибудь тоже пригодится
Идея в том, что данную модель можно использовать как стандартную модель обработки событий, однако, там где это необходимо, можно выбирать результирующий обработчик (обработчик «второго круга») путем назначения приоритетов от каждого обработчика («первого круга»)
Например, вывод основного дизайна сайта, когда подключаются все имеющиеся модули, в «первом круге» каждый модуль анализирует текущую ситуацию и отправляет заявку на «второй круг», где выигравший модуль и генерирует дизайн
2

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность