Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Архитектурные проблемы  Flex- приложений Константин Ковалёв http://riapriority.com/ [email_address] 24  августа 2008 г.
Начнем с примера
1 . Поиск SearchWebService
2. Просмотр детальной информации ItemDetail ItemInfo
3. Загрузка Избранного SharedObjects
4 . Сохранение Избранного SharedObjects
Пишем наше приложение …
… И получаем результат http://ozon-books-finder.googlecode.com/svn/trunk/flexspaghetti
Почему так? Потому что…
Почему так? Потому что… Но есть выход!
Паттерны Thing-Model-View-Editor Май 1979
Паттерны Models-Views-Controllers Декабрь 1979
Model-View-Controller (MVC) Trygve  Reenskaug <ul><li>Tags: </li></ul><ul><li>Xerox PARC </li></ul><ul><li>SmallTalk </li>...
MVC Controller View Model
Model <ul><li>Models represent knowledge  © </li></ul><ul><li>Хранит данные и состояние приложения </li></ul>
View ( представление ) <ul><li>Внешний вид приложения, визуальное поведение </li></ul><ul><li>Получает пользовательский вв...
Controller <ul><li>Отвечает на события </li></ul><ul><li>Изменяет модель </li></ul>
MVC- картинки Controller View Model
MVC- картинки Controller View Model оповещает
MVC- картинки Controller View Model оповещает изменяет
MVC- картинки Controller View Model оповещает изменяет обновляет
MVC- картинки (вариант) Controller View Model оповещает
MVC- картинки (вариант) Controller View Model оповещает изменяет
Что это дает? <ul><li>Взаимозаменяемость частей </li></ul><ul><li>Независимая модификация кода </li></ul><ul><li>Повторное...
Что с этим делать? <ul><li>Надо много думать   </li></ul><ul><li>Надо много писать   </li></ul><ul><li>Лучше я по-старин...
Что с этим делать? <ul><li>Надо много думать   </li></ul><ul><li>Надо много писать   </li></ul><ul><li>Лучше я по-старин...
MVC, IoC  и другие… <ul><li>Cairngorm </li></ul><ul><li>PureMVC </li></ul><ul><li>Parsley </li></ul><ul><li>Mate </li></ul...
Далее в нашей программе <ul><li>Cairngorm </li></ul><ul><li>Mate </li></ul>Stay tuned!
Чем заняться в перерыве http://code.google.com/p/ozon-books-finder/
Q&A <ul><li>Константин Ковалёв </li></ul><ul><li>http://riapriority.com/ </li></ul><ul><li>[email_address] </li></ul>
Upcoming SlideShare
Loading in …5
×

Архитектурные проблемы Flex-приложений

2,058 views

Published on

Презентация посвящена описанию архитектурных проблем Flex-приложений и способу их решения с помощью мета-паттерна Model-View-Controller (MVC).

Published in: Technology
  • Be the first to comment

Архитектурные проблемы Flex-приложений

  1. 1. Архитектурные проблемы Flex- приложений Константин Ковалёв http://riapriority.com/ [email_address] 24 августа 2008 г.
  2. 2. Начнем с примера
  3. 3. 1 . Поиск SearchWebService
  4. 4. 2. Просмотр детальной информации ItemDetail ItemInfo
  5. 5. 3. Загрузка Избранного SharedObjects
  6. 6. 4 . Сохранение Избранного SharedObjects
  7. 7. Пишем наше приложение …
  8. 8. … И получаем результат http://ozon-books-finder.googlecode.com/svn/trunk/flexspaghetti
  9. 9. Почему так? Потому что…
  10. 10. Почему так? Потому что… Но есть выход!
  11. 11. Паттерны Thing-Model-View-Editor Май 1979
  12. 12. Паттерны Models-Views-Controllers Декабрь 1979
  13. 13. Model-View-Controller (MVC) Trygve Reenskaug <ul><li>Tags: </li></ul><ul><li>Xerox PARC </li></ul><ul><li>SmallTalk </li></ul><ul><li>1978-1979 </li></ul><ul><li>http://heim.ifi.uio.no/~trygver/themes/mvc/mvc-index.html </li></ul><ul><li>http://heim.ifi.uio.no/~trygver/index.html </li></ul><ul><li>http://heim.ifi.uio.no/~trygver/1979/mvc-2/1979-12-MVC.pdf </li></ul>
  14. 14. MVC Controller View Model
  15. 15. Model <ul><li>Models represent knowledge © </li></ul><ul><li>Хранит данные и состояние приложения </li></ul>
  16. 16. View ( представление ) <ul><li>Внешний вид приложения, визуальное поведение </li></ul><ul><li>Получает пользовательский ввод </li></ul>
  17. 17. Controller <ul><li>Отвечает на события </li></ul><ul><li>Изменяет модель </li></ul>
  18. 18. MVC- картинки Controller View Model
  19. 19. MVC- картинки Controller View Model оповещает
  20. 20. MVC- картинки Controller View Model оповещает изменяет
  21. 21. MVC- картинки Controller View Model оповещает изменяет обновляет
  22. 22. MVC- картинки (вариант) Controller View Model оповещает
  23. 23. MVC- картинки (вариант) Controller View Model оповещает изменяет
  24. 24. Что это дает? <ul><li>Взаимозаменяемость частей </li></ul><ul><li>Независимая модификация кода </li></ul><ul><li>Повторное использование </li></ul><ul><li>Понятная структура </li></ul>
  25. 25. Что с этим делать? <ul><li>Надо много думать  </li></ul><ul><li>Надо много писать  </li></ul><ul><li>Лучше я по-старинке  </li></ul>
  26. 26. Что с этим делать? <ul><li>Надо много думать  </li></ul><ul><li>Надо много писать  </li></ul><ul><li>Лучше я по-старинке  </li></ul>За вас уже подумали и написали!
  27. 27. MVC, IoC и другие… <ul><li>Cairngorm </li></ul><ul><li>PureMVC </li></ul><ul><li>Parsley </li></ul><ul><li>Mate </li></ul><ul><li>ServeBox Foundry </li></ul><ul><li>Flest </li></ul><ul><li>Flex-slide </li></ul><ul><li>Guasax </li></ul><ul><li>Model-Glue: Flex </li></ul><ul><li>easyMVC </li></ul><ul><li>Prana </li></ul><ul><li>Anvil </li></ul><ul><li>MIoC </li></ul><ul><li>Solstice </li></ul><ul><li>ARP </li></ul><ul><li>Indigo Framework </li></ul><ul><li>VEGAS </li></ul><ul><li>MVCS </li></ul><ul><li>Swiz </li></ul>
  28. 28. Далее в нашей программе <ul><li>Cairngorm </li></ul><ul><li>Mate </li></ul>Stay tuned!
  29. 29. Чем заняться в перерыве http://code.google.com/p/ozon-books-finder/
  30. 30. Q&A <ul><li>Константин Ковалёв </li></ul><ul><li>http://riapriority.com/ </li></ul><ul><li>[email_address] </li></ul>

×