As you saw yesterday afternoon I didn’t blog too much, so let’s how today goes. The party last night was really fun, lot’s of networking, rock band playing and just a nice general geek atmosphere.
Right now the “Evolution of RIA Design Principals” panel is about to start.
Panel is:
Context: oriented to customer facing applications. Not games.
He works on effects at Adobe. Effects used in a subtle way can make the user more effective.
What are the top 3 rules
Don’t Lose the User.
Principles for Interesting Moments
Modular
Reusable
Bill mentions Christine Perfetti has a few videos on usability testing.
Consistency .via. developers working from the same code. Not a style guide as it’s open for interpretation.
Deepa was on the engineering team for 7 years and now just got promoted as product manager.
She will put the slides on her blog. So I will go easy with the notes.
We will talk about:
Inline declaration using the syntax, @{bindable_property}
<s:TextInput id="t1" text="@{t2.text}" /> <s:TextInput id="t2" />
<m:states> <m:Sate name="A"/> <m:Sate name="B"/> <m:Sate name="C"/> </m:states> <Button label="b1" includeIn="A,B" /> <Button label="b2" includeIn="C" />
Each text element maps to a class
flash.textLayout.elements.DivElement
flash.textLayout.elements.ParagraphElement
flash.textLayout.elements.SpanElement
flash.textLayout.elements.TabElement
TLF Partitioning:
- Simple, plain text
- Rich text
- Rich editable text
- Rich, editable, selectable text
Pixel Bender Integration
- Pixel Bender: language for hardware-indepdent image processing algorithm
- Shader: compiled instance of a Pixel Bender kernel
- Flex introduces the ShaderFilter class. Simplifies pixel bender such that they can be invoked in MXML
Advanced CSS
- Flex 3: type and class selectors
- Flex 4: Multiple class selectors, id selectors, descendant selectors, pseudo-selectors, pseudo-state selectors
Eg pseudo-state selectors
@namespace s "library://ns.adboe.com/flex/spark"; s|Button:up { color:#000000; } s|Button:down { color:#FFFFFFF; }OSFM
- Generic framework for managing media in Flash applications
- Offers playback functionality, exposed in the Spark video component
- replaces FLVPlayback
- org.osmf.media.MediaPlayer
- Play, pause, stop, loop, seek, volume, autoLoop, autoPlay, …
MXItemRenderer
- Spark ItemRenderers for use with MX List-based components
- Extends Spark ItemRenderer and handles the contractual differences
Charting Enhancements
- FilterFunctions for chart types. Can specify custom filter functions against the data set
- Inverted axis support
- RendererDirection in PieSeries
- Performance related bug fixes
RSLs
- By default RSL is turned on.
- Default linked HelloWorld is 78% smaller
- How to monkey patch when using RSLs. If you monkey patch you loose the benefits off RSLs
- Flex is split in 6 RSLs: textlayout, osmf, framework, spark, sparkskins, rpc
MXML Vector
- New type
- Like Arrays but contents are restricted to a single base type
- Faster than array
<fx:Vector id="myVector" type="String"> <fx:String>hi</fx:String> <fx:String>bye</fx:String> </fx:Vector>Compile-time FGX Optimization
- FXG directly to SWF representation
- Faster and smaller
- .fxg or past FXG into an MXML Component uses compile-time FXG Optimization
ASDoc
- Comments in MXML
- Support DITA creation
- Max, Win, Linux
Improved Compiler
- Incremental compilation. 50-80% better
- Full compilation: 30-40% better (large apps)
- Compiler Memory Usage: large apps are 30% better. multi-project apps are 70% better. Small apps are similar to Flex 3