- Flex uses MXML to define UI layout
- ActionScript to address dynamic aspects
- Targets Adobe AIR for outside browser or Flash Player for browser as runtime of the resultant application
- Flex parses MXML tags and compiles a SWF file that contains the corresponding ActionScript objects
Adobe creates many tools for creating SWF files, including Flash Professional, Flash Builder and Flash Catalyst.
Adobe Flash Builder is an Eclipse-based development tool targeted at developers. With this IDE, you use the Flex framework to create SWF files. Flash Builder accelerates Flex application development by providing intelligent code hinting and generation, refactoring, compile-time error checking, interactive step-through debugging, and visual design for laying out and styling user interfaces.
Includes classes for over 100 extensible components including:
- UI controls (buttons, list boxes, sliders, steppers, data grids, charts, and more)
- Containers (VGroup, HGroup, Panel, Form and more to help you build adaptive application interfaces)
- Managers (for styles, drag and drop, focus, popups, cursors, browser history and deep links, and more)
- Remote procedure calls (HTTP request, web services, and remote objects)
You create Flex applications (SWF files built with Flex) using two languages: ActionScript and MXML. ActionScript is an inheritance-based object-oriented scripting language based on the ECMAScript standard. The syntax and object-oriented features are very similar to Java; you define and extend classes, define and implement interfaces, and use the private, public, protected, and internal (package) namespaces. Different from Java, you use curly braces inside the package keyword when defining classes, you use the function keyword to declare methods, and you use post-colon data typing instead of the data type prefixes used in Java. Data typing is also optional. You can type everything for IDE code-hinting and compile and runtime type checking, but you can also use dynamic typing when appropriate for flexibility.
MXML is a convenience language; it provides an alternate way to generate ActionScript using a declarative tag-based XML syntax. When you compile an application, the MXML is parsed and converted to ActionScript in memory and then the ActionScript is compiled into bytecode, your SWF. Although you never have to use MXML, it is typically used to define application interfaces (for layouts, the MXML code is usually more succinct and understandable than the corresponding ActionScript would be) and ActionScript is used to write the application logic. Just as you break up your logic into separate ActionScript classes, you also break up your MXML code into separate reusable MXML components, separate ActionScript classes.
- Apache Flex Developers Video Training
- Apache Flex official website
- stackOverflow Questions
- Adobe Flash Players