Adobe Flex Adobe Flex Новая технология для создания Новая технология для создания RIA RIA на базе на базе Flash- Flash- платформы платформы Константин Ковалев Константин Ковалев RIA- RIA- разработчик разработчик http://www.riapriority.com/ http://www.riapriority.com/ [email protected][email protected]
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Adobe FlexAdobe FlexНовая технология для создания Новая технология для создания RIA RIA на базе на базе Flash-Flash-платформыплатформы
Константин КовалевКонстантин КовалевRIA-RIA-разработчикразработчикhttp://www.riapriority.com/http://www.riapriority.com/[email protected]@riapriority.com
www.rit2007.ru
Константин Ковалев
Новая?Новая?
Macromedia Flex 1.0 (март 2004) Flash Player 7, ActionScript 2
Macromedia Flex 1.5 (октябрь 2004) Flash Player 7, ActionScript 2
Macromedia Flex 2.0 public alpha 1 (октябрь 2005) Flash Player 8.5, ActionScript 3
Adobe Flex 2.0 (28 июня 2006) Flash Player 9
Adobe Flex 2.0.1 (5 января 2007) Flash Player 9
www.rit2007.ru
Константин Ковалев
Революционные особенности Революционные особенности Flex 2Flex 2 Возможность создания приложений без
необходимости компиляции на сервере Бесплатный SDK Новая виртуальная машина Новая среда разработки на базе Eclipse Новый язык программирования ActionScript 3 Ориентирована на традиционных разработчиков
www.rit2007.ru
Константин Ковалев
Насыщенные Интернет-Насыщенные Интернет-приложения (приложения (RIARIA)) Термин введен Macromedia в марте 2002
Текстовый интерфейс
Насыщенный интерфейс
Интернет
Локальная сеть
~1992
~1998
~2004
Мэйнфрэймы Десктоп
Веб-приложения
RIA
www.rit2007.ru
Константин Ковалев
Adobe Flex 2 – мощная среда Adobe Flex 2 – мощная среда для создания RIAдля создания RIA Объединение группы технологий на базе Flash-
платформы Flex – это DSL для GUI (Брюс Эккель)
Flex Builder
Flex SDK
MXML
ActionScript
CSS
Resource Bundles
SWC-библиотеки
Assets
Flex-framework
КомпиляцияSWF
www.rit2007.ru
Константин Ковалев
Продукты в составе Продукты в составе FlexFlex
Flex SDK
Языки
MXML и ActionScript 3
Фрэймворк
Компоненты, Контейнеры, Layout
Managers, Behaviors и эффекты
Утилиты
Компилятор, отладчик, AsDoc
Adobe LiveCycle Data Services
Messaging
Data Management
RPC
Flex Bulder
Визуальный дизайнер
Подсветка кода и автокомплит
Отладчик
Редактор CSS
Документация
Расширяемость плагинами
www.rit2007.ru
Константин Ковалев
Поддержка стандартовПоддержка стандартов
XML (MXML) ECMA-262, edition 4 (ActionScript 3) E4X (ECMAScript for XML из ECMA-357 2 ed.) CSS, level 1 (CSS1) Событийная модель W3C DOM Level 3 Events
specification J2EE (Adobe LiveCycle Data Services)
www.rit2007.ru
Константин Ковалев
Flash Player 9Flash Player 9
Альфа-версия появилась в октябре 2005 (как Flash Player 8.5)
Релиз в июне 2006 Вес плеера по-прежнему в районе 1M (примерно
на 300K больше Flash Player 8) Повышенная производительность
Flash Player 9
AVM1
ActionScript 1/2
AVM2
ActionScript 3
www.rit2007.ru
Константин Ковалев
Встроенная поддержка классов Строгая типизация + динамика Ошибки времени исполнения Реорганизованный API + новые API JIT-компилятор Введены примитивные типы int и uint Регулярные выраженияvar example:RegExp = /(\d)abc(\d*)/g;
либоvar example:RegExp = new RegExp ("(\d)abc(\d*)", "g");
Проект Tamarin
ActionScriptActionScript 3 3
www.rit2007.ru
Константин Ковалев
Display List APIDisplay List API
DisplayObject
AVM1Movie Bitmap InteractiveObject
DisplayObjectContainer
Loader Sprite Stage
SimpleButton TextField
MorphShape Shape
MovieClip
«Классовый» подход:var aButton:Button = new Button ();
вместоvar aButton:MovieClip =
aBox.attachMovie (“button”, “button”, 0);
Возможность смены родителя
var aButton:Button = new Button ();
aBox.addChild (aButton);
aContainer.addChild(aButton);
www.rit2007.ru
Константин Ковалев
E4XE4X
Простота и наглядность Так же прост, как XPath и SQL Простая запись XML Получение списка продуктовmyXML..product.@name
либоmyXML.company.products.product.@name
Получение всех продуктов на букву “F”myXML..product.(@name.indexOf('F') == 0)
Клиентская библиотека Сервер на базе J2EE HTTP/S, AMF, RTMF/S Server Data Pushing Компиляция swf на сервере Удаленный вызов процедур (RPC) Publish/Subscribe Messaging CRUD Кластеризация Бесплатно для 1 CPU, $6,000 (до 100 пользователей),
$20,000 (без ограничений)
Adobe LiveCycle Data ServicesAdobe LiveCycle Data Services
www.rit2007.ru
Константин Ковалев
Flash vsFlash vs FlexFlex
Таймлайн
Библиотека
Инструменты рисования
Ограниченная поддержка CSS
Бинарный исходник
Для аниматоров, художников и медиа-
дизайнеров
Таймлайн отсутствует
Внешние ассеты
ActionScript
Design View
Полноценный CSS
Текстовые исходники
Для разработчиков
ActionScript и MXML
www.rit2007.ru
Константин Ковалев
Q&AQ&A
Константин КовалевКонстантин КовалевRIA-RIA-разработчикразработчикhttp://www.riapriority.com/http://www.riapriority.com/[email protected]@riapriority.com