Главная

Краткий обзор Marionette.js

Краткий обзор Marionette.js


Приоткрываем тайную дверь архитектуры Marionette.js.
Всем привет! Сегодня, я хочу немного рассказать вам про Marionette.js
Backbone, отличный инструмент для создания одностраничных клиентских приложений, но как и видно из названия, он дает только самую базу. А что делать, ,когда наше приложение разрастается и требуется применять более сложные архитектурные паттерны? Именно для этого и нужен Marionette.js. В нем есть, много того, что не достает Backbone. К примеру автоматизация таких процессов как: рендеринга вида, написание с нуля разных вариантов видов (itemView, collectionView, compositeView, region, layout), уже ставшими шаблонными в Backbone.js разработке. Так же Marionette упрощает работу с событиями и их прослушкой. Многие события, которые используются всегда, в Marionette стоят по умолчанию. Множество дополнительных методов придающих гибкости вашим видам, моделям и коллекциям, а так же улучшенная (по сравнению с коренным бэкбоуном) работа с утечками памяти. Вообщем все эти и еще многие, многие полезные и классные фишки, за которые стоит марионетку уважать и взять в свой инструментарий.

Marionette.js – масштабируемая и составная архитектура для приложений на базе backbone.js.


Скорее всего в нашем блоге мы ещё не раз вернемся к Marionette.js, а пока быстро пробежимся по основным архитектурным элементам библиотеки.

Marionette.Application – Объект приложения который запускает его, добавляет инициализаторы и многое другое.
Marionette.AppRouter – Делает ваш роутер ничем другим, как конфигуратором. Вся остальная логика по контролированию и управлению модулей, роутеров ,видов итд – вынесено в контроллер.
Marionette.Callbacks – Управление набором колбэков, и выполнение их по мере необходимости.
Marionette.CollectionView: – Вид, который перебирает коллекцию и рендерит индивидуальный экземпляр itemView для каждой модели
Marionette.Commands – Дополнение для Backbone.Wreqr.Commands. Позволяет компонентам в приложении утверждать, что некоторая работа должна быть сделана, но без того, чтобы быть явно связаной с компонентом, который выполняет работу.
Marionette.CompositeView – составной вид, для рендеринга сложных иерархий моделей.
Marionette.Controller – Объект, целью которого является управление модулями, роутерами, видами итд. Реальизация паттерна посредника. (Mediator Pattern)
Marionette.functions – Набор вспомогательных функций и утилит для реализации архитектуры Marionette.js в ваших объектах.
Marionette.ItemView – Вид для рендеринга индивидуальной модели.
Marionette.Layout – Вид, который рендерит разметку (layout) и создает менеджер регионов (частей разметки) для управления ими в его пределах.
Marionette.Module – Модули и подмодули приложения.
Marionette.Region – Управление визуальными регионами (частями разметки) приложения, включая отображение и удаление контента.
Marionette.Renderer – Рендер шаблонов с данными или без них, последовательным и обычным способом.
Marionette.RequestResponse – Расширение Backbone.Wreqr.RequestResponse – простой запрос/ответ фреймворк.
Marionette.TemplateCache – Кэширует шаблоны, которые хранятся в тегах script, для более быстрого последующего доступа.
Marionette.View – Базовый класс вида, от которого наследуются все остальные виды Marionette.js. Не предназначен для прямого использования.
Так же рассмотрим пару вспомогательных дополнительных библиотек.

Backbone.Wreqr.EventAggregator – Агрегатор событий, используется чтобы облегчить работу с событиями. Реализация pub/sub (издатель/подписчик) шаблона проектирования.
Backbone.Wreqr.Commands – простая система выполнения команд.
Backbone.Wreqr.RequestResponse – простая запрос/ответ система.
На этом сегодня все. Надеюсь я пробудил в вас интерес к этой замечательной библиотеке.

Источник:loftblog
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо зайти на сайт под своим именем.

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.