Архитектурные проблемы Flex-приложений Константин Ковалёв 24 августа 2008 г.
Начнем с примера
1. Поиск SearchWebService
2. Просмотр детальной информации ItemDetail ItemInfo
3. Загрузка Избранного SharedObjects
4. Сохранение Избранного SharedObjects
Пишем наше приложение…
…И получаем результат
Почему так? Потому что…
Почему так? Потому что… Но есть выход!
Паттерны Thing-Model-View-Editor Май 1979
Паттерны Thing-Model-View-Editor Май 1979 Models-Views- Controllers Декабрь 1979
Model-View-Controller (MVC) Trygve Reenskaug Tags: Xerox PARC SmallTalk
MVC Controller View Model
Models represent knowledge ©Models represent knowledge Хранит данные и состояние приложения
View (представление) Внешний вид приложения, визуальное поведение Получает пользовательский ввод
Controller Отвечает на события Изменяет модель
MVC-картинки Controller View Model
MVC-картинки Controller View Model оповещает
MVC-картинки Controller View Model оповещает изменяет
MVC-картинки Controller View Model оповещает изменяет обновляет
MVC-картинки (вариант) Controller View Model оповещает
MVC-картинки (вариант) Controller View Model оповещает изменяет
Что это дает? Взаимозаменяемость частей Независимая модификация кода Повторное использование Понятная структура
Что с этим делать? Надо много думать Надо много писать Лучше я по-старинке
Что с этим делать? Надо много думать Надо много писать Лучше я по-старинке За вас уже подумали и написали!
MVC, IoC и другие… Cairngorm PureMVC Parsley Mate ServeBox Foundry Flest Flex-slide Guasax Model-Glue: Flex easyMVC Prana Anvil MIoC Solstice ARP Indigo Framework VEGAS MVCS Swiz
Далее в нашей программе Cairngorm Mate Stay tuned!
Чем заняться в перерыве ozon-books-finder/
Q&A Константин Ковалёв