-
Модули содержат специфичные части функциональности вашего приложения. Они публикуют уведомления, информирующие приложение о том, что случилось что-то интересное. Это их главная забота. Как я поясню в FAQ, модули могут зависеть от различных вспомогательных методов для работы с DOM, но идеальным бы было отсутствие любых зависимостей от других компонентов системы. Модули не должны иметь отношение к тому:
- какие объекты или модули подписаны на их сообщения,
- где находятся эти объекты (на клиенте или на сервере),
- какое количество объектов подписано на уведомления.
- Фасад — абстракция ядра защищающая его от прямого контакта с модулями. Он подписывается на интересные сообщения от модулей, и говорит: «Отлично! Что случилось? Расскажи мне больше подробностей!». Так же фасад поддерживает безопасность модулей, проверяя, действительно ли модуль, отправивший сообщение, имеет необходимые права для того, чтобы его сообщение было соответствующим образом обработано ядром.
Решетка с резиной грязезащитные решетки. рулонные шторы с автоматикой https://mirrolet.com.ua/ шторы рулонные в столице
- Медиатор (ядро приложения) выступает в роли управляющего публикациями событий и подписками на них. Он отвечает за управление запуском и остановку модулей по необходимости. Здесь используется частичная динамическая загрузка зависимостей, и гарантия того, что упавшие модули могут быть централизованно перезапущены в случае проблем.
Итог этой архитектуры в том, что модули, в большинстве случаев, практически не зависят от других компонентов приложения. Они могут быть легко тестируемы и легко поддерживаемы в рамках своего кода. Кроме того, благодаря низкому уровню связанности кода, такие модули можно легко скопировать на новую страницу для использования в другом проекте, не прилагая дополнительных усилий. Так же, эти модули могут быть загружены или удалены динамически в процессе работы приложения.