Support us

PureMVC

Оставить комментарий
PureMVC
Хочу немного рассказать об одном из самых стоящих структурных фреймворков которых я видел. Изначально он был написан для AS3, но позже переписан для AS2, C#, ColdFusion, Haxe, Java, JavaScript, Objective C, PHP, Python и Ruby. Список внушительный, но чем же он так хорош? Как следует из названия автор постарался воплотить один из самых известных патернов в жизнь (хотя и далеко не единственный из там используемых). Update: PureMVC – это компактный прикладной фреймворк, позволяющий разместить множество задач, разбитых на 3 составляющих, со слабой связанностью и удобным движком событий.
Basics
Обычное PureMVC приложение состоит из класса Facade, набора команд, медиаторов, прокси и визуальных компонент. Программист напрямую не работает ни с классом Model, ни с Controller, ни с View; для этого он создает уже локальные, разбитые на подзадачи классы Proxy's, *Command's, Mediator's.
Контроллер кеширует ссылки на классы Команд, создавая экземпляры класса команды в тот момент, когда возникает необходимость выполнения этой команды и уничтожая после выполнения.
Модель просто кэширует именованные ссылки к Прокси. Код Прокси манипулирует моделью данных, связываясь с удаленными сервисами, если нужно сохранить или запросить данные. Таким образом, Модель данных изолирована от контроллеров и представления. Это приводит к переносимому коду Модели.
Представление в первую очередь кэширует именованные ссылки на Медиаторы. Код Медиатора обслуживает компонент(ы) Представления, добавляя к ним Слушателей событий и от их имени отправляя и получая оповещения к и от остальной системы, при этом непосредственно управляя их состоянием.
Что касается циркуляции событий, тут все проходит наредкость просто, через одно место по строковому идентификатору.
Вам не нужно беспокоиться о деталях реализации Наблюдателя/Оповещения в PureMVC; это внутренняя часть фреймворка. Вам нужно только использовать простой метод для отправки Оповещений от Прокси, Медиаторов, Команд и Фасада, который даже не требует создавать экземпляр Оповещения.
Впрочем, поскольку в 2 словах все не объяснишь, советую скачать доку (она там называется Best Practices). Там даже недавно появилась русская версия. А так же посмотреть пример на близком для Вас языке.
Advance
Для тех же кто уже сталкивался с этим фреймворком, посоветую иногда заглядывать на оф-сайт. Там появляются интересные дополнительные классы вроде "асинхронных команд" или "State Machine". Асинхронные команды, например, позволяют задать последовательность (как в MacroCommand), только выполняться каждая последующая будет после вызова завершения у предыдущей. Official site PS Рисунок кликабельный
Присоединяйтесь к сообществу dev.by

Читать

Читайте также
12 онлайн-курсов по языку Java для новичков и профессионалов (август, 2023)
12 онлайн-курсов по языку Java для новичков и профессионалов (август, 2023)
12 онлайн-курсов по языку Java для новичков и профессионалов (август, 2023)
Java по-прежнему входит в список самых популярных языков программирования. Вместе с Digitaldefynd мы составили список курсов по Java, которые подойдут как новичкам, так и людям с опытом программирования, чтобы освоить этот востребованный язык.
10+ сертификаций Coursera, которые могут изменить вашу карьеру
10+ сертификаций Coursera, которые могут изменить вашу карьеру
10+ сертификаций Coursera, которые могут изменить вашу карьеру
Бюджетный способ прокачать навыки и повысить зарплату — это профессиональный сертификат от Google, IBM или крупного зарубежного университета. На Coursera как раз можно найти десятки полезных обучающих программ по машинному обучению, проджект-менеджменту и не только. Собрали 10+ сертификаций, которые будут выигрышно смотреться в резюме как новичка, так и опытного специалиста.
10 популярных курсов по изучению JavaScript для крутой веб-разработки
10 популярных курсов по изучению JavaScript для крутой веб-разработки
10 популярных курсов по изучению JavaScript для крутой веб-разработки
JavaScript остается одним из самых популярных языков программирования в мире. Мы собрали список курсов и сертификаций по Javascript от основ до необычных особенностей. В листинге как платные, так и бесплатные онлайн-курсы. Погнали за новыми знаниями!
2 комментария
Microsoft запустила обучающий сайт по Java
Microsoft запустила обучающий сайт по Java
Microsoft запустила обучающий сайт по Java
1 комментарий

Хотите сообщить важную новость? Пишите в Telegram-бот

Главные события и полезные ссылки в нашем Telegram-канале

Обсуждение
Комментируйте без ограничений

Релоцировались? Теперь вы можете комментировать без верификации аккаунта.

Комментариев пока нет.