Workshop Length
5 days
Objective
Learn how to develop rich internet applications using the Flex framework.
Prerequisites
Programming experience in some programming language
Pricing
For private, dedicated workshops see
our price page.
For public, open-enrollment workshops, see
the table to the right.
Topics
- Overview
- Web runtime landscape
- Flash Player
- DHTML/AJAX
- Java Plugin
- Silverlight
- The Flash Player
- SWF files
- ActionScript
- Core libraries
- Static and Dynamic Linking
- 4 ways to create swf's
- Flash IDE
- Flex Compiler
- Open Laszlo
- Other
- Tools for Flex Development
- Flash Player
- Standard and debug versions
- Stand-alone and browser plugins
- The Flex Framework
- An ActionScript Library
- UI Widgets - built on top of lower level Flash libraries
- Other libraries
- MXML
- Gets translated to ActionScript
- Two ways to do the same thing
- MXML-only components
- Compiler
- Flex Builder
- Eclipse plug-in
- Stand-alone
- IntelliJ
- Quick Start
- Simplest possible Flex application
- Extending Application
- Vertical Layout
- Button
- Alert
- ActionScript and MXML Quick Start
- Dynamic objects
- Creating objects
- new Object()
- Constructor function
- Object literal
- mx:Object tag
- Property access: obj.prop
- Square bracket property access: obj["prop"]
- Properties of type Function
- ObjectProxy
- IEventDispatcher
- mx:Model tag
- Arrays
- new Array()
- Array literals
- for each
- ArrayCollection
- IEventDispatcher
- Added functionality
- Sorting
- Filtering
- JSON
- Object literals
- Array literals
- Classes (sealed objects)
- Packages
- Creating objects
- Function Properties
- XML Processing
- The XML Object
- Creating an XML Object
- XML Literal
- XML String constructor
- mx:XMLTag in-line
- Accessing child elements and attributes
- Single element
- Repeating elements
- Attributes
- Filtering
- XMLList
- XMLListCollection
- Reflection
- describeType
- for in
- Square brackets
- Functions as Objects
- Functions as variables
- Functions as dynamic properties
- Functions as sealed properties
- Exception handling
- Layouts and Containers
- Absolute
- VBox/HBox
- HDividedBox/VDividedBox
- Form
- Grid
- Tile
- TabNavigator
- Basic UI Components
- UIComponent
- Label
- Text
- InputText
- Button
- TextArea
- RichTextEditor
- Event handling
- MXML Event handlers
- ActionScript event handlers
- Event objects
- callLater()
- UIComponent
- Component Hierarchy
- Component Lifecycle
- Common properties, methods and events
- MVC and Data Binding
- Binding
- Binding MXML Element
- Two way binding
- Binding with curly braces
- Binding with ActionScript
- MVC
- Binding to model classes
- [Bindable]
- ObjectProxy
- Manually sending PropertyChangingEvents
- Binding's pitfalls
- Data-Driven Components
- List
- ComboBox
- DataGrid
- Tree
- Table
- ItemRender
- ItemEditor
- Repeater
- Menus
- Forms
- Form Layout
- Validation
- Formatting
- Custom Validators and Formatters
- Windows and Popups
- PopupManager
- TitleWindow
- Passing data between windows
- Modal
- Non-blocking
- Custom Components
- MXML Components
- In-line MXML Component
- ActionScript
- Styles
- In-line
- Style Tag
- External Style
- Back-end Data Services
- SOAP versus REST Services
- Async Call Backs
- Calling SOAP Web Services
- WSDL Overview
- SOAP Overview
- WebService Tag
- Operations
- Masked Error Messages
- Using ActionScript to call web services
- Static Proxies
- WSDL2ActionScript
- Hand generated proxy classes
- Calling REST Services
- HttpService Tag
- Processing XML
- Security
- Transactions
- Unit of work
- Offline transactions
- Long running (offline) transactions
- State model for dirty tracking
- Architectural Patterns
- SOFEA
- REST
- Re-use versus user experience
- Server-side versus client-side
- Projects
- Black Jack Game
- Product Catalog
- Shopping Cart
|
|