This appendix is intended for Macromedia Flex Builder users who are unfamiliar with Flex
technology. It explains basic Flex concepts, but not specific development techniques. For more
detailed information, see Developing Flex Applications Help.
This appendix contains the following sections:
•
"About the Flex application model" on page 145
•
"Typical application development steps" on page 146
•
"About Flex files" on page 146
•
"About Flex containers, components, and controls" on page 148
•
"About Flex data bindings" on page 150
About the Flex application model
When you build an application using Flex, you describe its user interface using containers and
controls. A container is a rectangular region of the screen that contains controls and other
containers. Examples of containers are a Form container used for data entry, a Box, and a Grid. A
control is a form element, such as a Button or Text Input field.
Containers and controls define the application's user interface. In an MVC design pattern, those
pieces of the application model represent the view. The model is represented by the data model.
Flex data models let you separate your application's data and business logic from the user
interface.
Data binding is the process of tying the data in one object to another object. The data model
supports bidirectional data binding for writing data from Flex controls to the data model, or for
reading data into controls from the model. You can also bind server data to a data model or
directly to Flex controls. For example, you can bind the results returned from a web service to the
data model, and then have that data propagate to your form controls.
The data model supports automatic data validation. This means that you can use the Flex
ZipCode validator to make sure that the value in a model field is a valid ZIP code. If the data is
invalid, you can display a message to the user so that the user can correct the error.
APPENDIX A
Basic Flex Concepts
145
Need help?
Do you have a question about the FLEX BUILDER-USING FLEX BUILDER and is the answer not in the manual?