Top Banner
GUMBO (Flex Framework 4) Бесплатный фреймворк с открытым кодом для разработки насыщенных интернет приложений (RIA), которые поддерживаются всеми ведущими браузерами, платформами и операционными системами. Skype: mr.dr.jr. Email: [email protected] Sunday, May 30, 2010
24

Flex 4 Gumbo Framework

Aug 21, 2015

Download

Technology

Mr_Dr_Jr
Welcome message from author
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
Page 1: Flex 4 Gumbo Framework

GUMBO(Flex Framework 4)

Бесплатный фреймворк с открытым кодом для разработки насыщенных интернет приложений (RIA), которые поддерживаются всеми ведущими браузерами, платформами и операционными системами.

Skype: mr.dr.jr. Email: [email protected]

Sunday, May 30, 2010

Page 2: Flex 4 Gumbo Framework

Работа в Flex 4 основана на трех принципах:

Все внимание дизайну: среда разработки обеспечивает новый уровень выразительности конечных проектов, благодаря использованию новых инструментов.

Продуктивность разработки: улучшенная производительность компилятора и языковых функций, таких как привязка данных.

Эволюция фреймворка: новые возможности проигрывателя Flash Player в сочетании с новыми функциями.

Flex 4 концепция и структура

Sunday, May 30, 2010

Page 3: Flex 4 Gumbo Framework

Расширенная работа с состояниями

Графические примитивы

Динамическийlayout

Улучшенная анимация

Встроенный OSMF

Поддержка FTE/TLF

Трансформация элементов компоновки

Компоненты Spark

Поддержка FXG

Улучшенный компилятор

Двустороннее связывание данных

Продвинутый CSS

Типизированные массивы (Vector)

Модель компонента

Spark

Скин

Flex 4 концепция и структура

Sunday, May 30, 2010

Page 4: Flex 4 Gumbo Framework

Язык разметки MXML и пространства имен

MXML 2006: Пространство имен языка MXML предыдущей версии. Префикс по умолчанию: mx

MXML 2009: Новое пространство имен языка MXML. Представляет собой только пространство имен языка, не содержащее тегов компонента.Префикс по умолчанию: fx

Spark: Данное пространство имен включает все новые компоненты Spark. Его необходимо использовать в сочетании с пространством имен языка MXML 2009.Префикс по умолчанию: s

MX: Данное пространство имен включает все компоненты MX. Его необходимо использовать в сочетании с пространством имен языка MXML 2009.Префикс по умолчанию: mx

Sunday, May 30, 2010

Page 5: Flex 4 Gumbo Framework

Пример использования пространств имен

<?xml version="1.0" encoding="utf-8"?>

<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"

xmlns:s="library://ns.adobe.com/flex/spark"

xmlns:mx="library://ns.adobe.com/flex/mx">

<fx:Declarations>

<s:Fade id="fadeEffect" target="{main_calendar}"

alphaFrom="1" alphaTo="0" />

</fx:Declarations>

<mx:DateChooser id="main_calendar" x="279" y="23"/>

<s:Button label="play effect" click="fadeEffect.play()" x="325" y="258"/>

</s:Application>

Sunday, May 30, 2010

Page 6: Flex 4 Gumbo Framework

Flex 4 – улучшение продуктивности

Двустороннее связывание данных text=“@{myModel.data}”

<fx:Binding source=“foo.text” destination=“myModel.data” twoWay=“true” />

Улучшена работа с CSS Многочисленные StyleName:

<Button id=“upButton” styleName=“default tiny” />

ID селекторы:

#upButton { fontSize: 14 }

Селекторы дочерних элементов:

s|Scrollbar #upButton { baseColor: #FF8888 }

Псевдо селекторы:

s|Scrollbar #upButton:over { baseColor: #8888FF }

Неймспейсы в CSS @namespace s "library://ns.adobe.com/flex/spark";

Sunday, May 30, 2010

Page 7: Flex 4 Gumbo Framework

Новый механизм создания анимации

Работа с любыми объектами (не только UIComponents)

Анимация свойств и частей компонента

Автоматический возврат при смене состояний

Поддержка фильтров, в том числе и Pixel Bender

Трансформации в трех измерениях

Поддержка ключевых кадров

Sunday, May 30, 2010

Page 8: Flex 4 Gumbo Framework

Компоновка (Layout)

Динамическая

Есть возможность создать Custom Layout

Поддержка двумерных и трехмерных трансформаций

Управление вложенностью

Виртуализация

Плавный скроллинг

Sunday, May 30, 2010

Page 9: Flex 4 Gumbo Framework

Flex 4 – Поддержка ASDoc в документах MXML

<?xml version="1.0"?>

<!–- Стандартный комментарий-->

<!--- ASDoc Коментарий для класса. -->

<mx:VBox xmlns="http://ns.adobe.com/mxml/2009" xmlns:mx="library:adobe/flex/halo" >

<!--- Коментарий для кнопки-->

<mx:Button id="myButton" label="This button has comment" />

<!--- Этот комментарий не принадлежит никакому компоненту и будет проигнорирован-->

</mx:VBox>

Sunday, May 30, 2010

Page 10: Flex 4 Gumbo Framework

Графика в MXML

<fx:Library><fx:Definition name="MySquare">

<s:Group><s:Rect width="100%" height="100%">

<s:stroke><s:SolidColorStroke color="red"/>

</s:stroke></s:Rect>

</s:Group></fx:Definition><fx:Definition name="MyCircle">

<s:Group><s:Ellipse width="100%" height="100%">

<s:stroke><s:SolidColorStroke color="blue"/>

</s:stroke></s:Ellipse>

</s:Group></fx:Definition>

</fx:Library>

Sunday, May 30, 2010

Page 11: Flex 4 Gumbo Framework

Графика в MXML

Простые Формы (прямоугольники, эллипсы, окружности и другие)

Сложные Линии(прямые, квадратичные, кривые Безье)

Широкий спектр заливок и контуров (сплошные, прозрачные, с использованием картинок, градиенты)

Маскирование, фильтры, режимы смешивания(размытие, сияние, тень)

Цвета и 2D трансформации(поворот, масштабирование, оттенок)

Интегрированный текст, картинки

Sunday, May 30, 2010

Page 12: Flex 4 Gumbo Framework

Flash XML Graphics (FXG)

FXG: графический формат основанный на XML

Распознается графическими редакторами

Базируется на модели отрисовки 10 flash плейера

Статический – без связываний, без компоновки, без слушателей событий, без стилизации

Оптимизируется компилятором (важно для высокой производительности)

Интерактивное содержание Eclipse IDE

Анализ кода

Отладка

Flash CS4Professional

FlashCatalyst

FlashBuilder

Инструменты для дизайна и разработки

After Effects Illustrator Fireworks Photoshop

FXG

Анимация

Визуальная компоновка

Создание прототипов

Разработка рабочих процессов

Sunday, May 30, 2010

Page 13: Flex 4 Gumbo Framework

Пример FXG:

<?xml version="1.0" encoding="utf-8"?><!-- fxg/comps/ArrowAbsolute.fxg --><Graphic xmlns="http://ns.adobe.com/fxg/2008" version="2">

<Path data="M 20 0 C 50 0 50 35 20 35 L 15 35 L 15 45 L 0 32 L 15 19 L 15 29 L 20 29 C 44 29"/> <!-- Define the border color of the arrow. --><stroke>

<SolidColorStroke color="#888888"/></stroke><!-- Define the fill for the arrow. --><fill>

<LinearGradient rotation="90"><GradientEntry color="#000000" alpha="0.8"/><GradientEntry color="#FFFFFF" alpha="0.8"/>

</LinearGradient></fill>

</Path></Graphic>

Sunday, May 30, 2010

Page 14: Flex 4 Gumbo Framework

High-Fidelity Text

FTE: Новый механизм работы с текстом (Flash Player 10)

TLF: Новые компоненты используют FTE.

Преимущества: Текст в нескольких связанных контейнерах

Вертикальный текст

Множество столбцов

Лигатуры и типографические элементы

Работа с пользовательскими шрифтами

Двунаправленный текст

Sunday, May 30, 2010

Page 15: Flex 4 Gumbo Framework

Стейты во Flex 3Сложны в использовании

Многословные в описании

Сложное управление иерархией

Трудно оптимизируемые

<states><State name=”login”>

<SetProperty target=“{goBtn}” name=“label” value=“log in” /></State><State name=”register”>

<SetProperty target=“{goBtn}” name=“label” value=“sign up” /><AddChild target=“vBox”>

<Checkbox label=“Agree to terms” /></AddChild>

</State></states>

<VBox id=“vBox” ><Text text=“username:” /><TextInput /><Text text=“password:” /><TextInput /><Button label=“new user?” /><Button id=“goBtn” />

</VBox>

Sunday, May 30, 2010

Page 16: Flex 4 Gumbo Framework

Стейты во Flex 3Сложны в использовании

Многословные в описании

Сложное управление иерархией

Трудно оптимизируемые

<states><State name=”login”>

<SetProperty target=“{goBtn}” name=“label” value=“log in” /></State><State name=”register”>

<SetProperty target=“{goBtn}” name=“label” value=“sign up” /><AddChild target=“vBox”>

<Checkbox label=“Agree to terms” /></AddChild>

</State></states>

<VBox id=“vBox” ><Text text=“username:” /><TextInput /><Text text=“password:” /><TextInput /><Button label=“new user?” /><Button id=“goBtn” />

</VBox>

<states><State name=”login”>

</State><State name=”register”>

<AddChild target=“vBox”><Checkbox label=“Agree to terms” />

</AddChild></State>

</states>

<VBox id=“vBox” ><Text text=“username:” /><TextInput /><Text text=“password:” /><TextInput /><Button label=“new user?” /><Button id=“goBtn” label.login=”log in” label.register=”sign up”/>

</VBox>

Sunday, May 30, 2010

Page 17: Flex 4 Gumbo Framework

Стейты во Flex 3Сложны в использовании

Многословные в описании

Сложное управление иерархией

Трудно оптимизируемые

<states><State name=”login”>

<SetProperty target=“{goBtn}” name=“label” value=“log in” /></State><State name=”register”>

<SetProperty target=“{goBtn}” name=“label” value=“sign up” /><AddChild target=“vBox”>

<Checkbox label=“Agree to terms” /></AddChild>

</State></states>

<VBox id=“vBox” ><Text text=“username:” /><TextInput /><Text text=“password:” /><TextInput /><Button label=“new user?” /><Button id=“goBtn” />

</VBox>

<states><State name=”login”>

</State><State name=”register”>

<AddChild target=“vBox”><Checkbox label=“Agree to terms” />

</AddChild></State>

</states>

<VBox id=“vBox” ><Text text=“username:” /><TextInput /><Text text=“password:” /><TextInput /><Button label=“new user?” /><Button id=“goBtn” label.login=”log in” label.register=”sign up”/>

</VBox>

<states><State name=”login”>

</State><State name=”register”>

</State></states>

<VBox id=“vBox” ><Text text=“username:” /><TextInput /><Text text=“password:” /><TextInput /><Button label=“new user?” /><Checkbox includeIn=“register” label=“agree to terms” /><Button id=“goBtn” label.login=”log in” label.register=”sign up”/>

</VBox>

Sunday, May 30, 2010

Page 18: Flex 4 Gumbo Framework

<states><State name=”login”>

<SetProperty target=“{goBtn}” name=“label” value=“log in” /></State><State name=”register”>

<SetProperty target=“{goBtn}” name=“label” value=“sign up” /><AddChild target=“vBox”>

<Checkbox label=“Agree to terms” /></AddChild>

</State></states>

<VBox id=“vBox” ><Text text=“username:” /><TextInput /><Text text=“password:” /><TextInput /><Button label=“new user?” /><Button id=“goBtn” />

</VBox>

<states><State name=”login”>

</State><State name=”register”>

<AddChild target=“vBox”><Checkbox label=“Agree to terms” />

</AddChild></State>

</states>

<VBox id=“vBox” ><Text text=“username:” /><TextInput /><Text text=“password:” /><TextInput /><Button label=“new user?” /><Button id=“goBtn” label.login=”log in” label.register=”sign up”/>

</VBox>

<states><State name=”login”>

</State><State name=”register”>

</State></states>

<VBox id=“vBox” ><Text text=“username:” /><TextInput /><Text text=“password:” /><TextInput /><Button label=“new user?” /><Checkbox includeIn=“register” label=“agree to terms” /><Button id=“goBtn” label.login=”log in” label.register=”sign up”/>

</VBox>

<states><State name=”login”/><State name=”register”/>

</states>

<VBox id=“vBox” ><Text text=“username:” /><TextInput /><Text text=“password:” /><TextInput /><Button label=“new user?” /><Checkbox includeIn=“register” label=“agree to terms” /><Button id=“goBtn” label.login=”log in” label.register=”sign up”/>

</VBox>

Стейты во Flex 4

Sunday, May 30, 2010

Page 19: Flex 4 Gumbo Framework

Скинование и архитектура компонентов

MXML

GraphicsLayout

AnimationPartsStates

BehaviorLogicData

Component/SkinMX Component Model

Sunday, May 30, 2010

Page 20: Flex 4 Gumbo Framework

Скинование и архитектура компонентов

MXML

GraphicsLayout

AnimationPartsStates

Skin

CSS properties

ActionScript

Component

BehaviorLogicData

Spark Component

Model

Sunday, May 30, 2010

Page 21: Flex 4 Gumbo Framework

Skinning Lifecycle

Sunday, May 30, 2010

Page 22: Flex 4 Gumbo Framework

Skinnable Component Livecycle

Invalidation

Execution

commitProperties()

getCurrentSkinState()

measure()

updateDisplayList()

invalidateProperties()

invalidateSize()

invalidateDisplayList()

invalidateSkinState()

Sunday, May 30, 2010

Page 23: Flex 4 Gumbo Framework

Пример использования

<s:Button skinClass="ButtonSkin" />

<s:Skin xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" alpha.disabled=".5">

<!-- states --> <s:states> <s:State name="up" /> <s:State name="over" /> <s:State name="down" /> <s:State name="disabled" /> </s:states> <!-- border and fill --> <s:Rect id="rect" radiusX="4" radiusY="4" top="0" right="0" bottom="0" left="0"> <s:fill> <s:SolidColor color="0x77CC22" /> </s:fill> <s:stroke> <s:SolidColorStroke color="0x131313" weight="2"/> </s:stroke> </s:Rect> <!-- text --> <s:Label text="Button!" color="0x131313" textAlign="center" verticalAlign="middle" horizontalCenter="0" verticalCenter="1" left="12" right="12" top="6" bottom="6" /></s:Skin>

Sunday, May 30, 2010

Page 24: Flex 4 Gumbo Framework

Datavisualization теперь часть Flex 4 SDK

Теперь это бесплатно!

Sunday, May 30, 2010