This document is from the authorized Flex curriculum written by learn the basics of building Flex applications using the Cairngorm framework. Cairngorm is based on Model View Controller (MVC) framework, specifically designed to facilitate complex state and data synchronization. These explain the Cairngorm Architecture, which is our preferred way to structure Flex applications. Below the introductory material can be found more detailed.
|Published (Last):||3 October 2011|
|PDF File Size:||7.51 Mb|
|ePub File Size:||2.85 Mb|
|Price:||Free* [*Free Regsitration Required]|
Please look around if you live in a cage J. Just simply renaming this variable in the ModelLocator will require changes in one or more views that are bound to it.
The Front Controller object serves as a central registry of all Cairngorm events. When a View component fires an event, FrontController finds the Command class that was registered with this event and calls its method execute.
Flex – Cairngorm Architecture Overview
But it is complicate and hard to study and maintain. In the fgamework code, CairngormEventDispatcher dispatches the cgEvent: Whenever the user interacts with the view or an action occurs an event must be dispatched.
The Command class updates the data in the model typically, a collection of value objects defined in the global ModelLocator. Because each model located inside the ModelLocator is bound to a UI control, its content gets updated automatically.
Have you noticed that the Command class has also reached for the AppModelLocator to be able to update the model? The delegate is used to call the data source through the service locator: You simply need to add the directory your class is in as an XML Namespace and then include the tag in cairnngorm file.
This class creates an event with an ID AppController.
flex – How cairngorm framework works internally – Stack Overflow
Explore the Flex Cairngorm framework and improvements: You are commenting using your Twitter account. Front Controller builds the mapping between the Dispatched event and Command. Just move the business logic from the delegate right into the execute method of the command class itself. The free, open source framework was originally implemented in the ActionScript 3 language for use with Adobe FlexFlash and AIRand it has since been ported to nearly all the major web development platforms.
It should only pass strongly typed value objects to a responder. It contains no methods or logic and acts as a pure data container.
Apache Flex – A Practical Guide: Introduction to MVC Architecture of Cairngorm
Command When a View component fires an event, FrontController finds the Command class that was cairngodm with this event and calls its method execute. The following list shows the different elements that form the framework.
Business Delegates form an abstraction layer between the server-side services and the main frontend application. It is specifically designed to facilitate complex state and data synchronization between the client and frqmework server, while keeping the programming of the View layer detached from the data implementation.
It was open sourced in the summer of This model locator stores the data and the state of this application—in particular, the variable employeeListDPwhich is the place where the list of employees is being stored.
The controller is instantiated directly in the main. The AppController implementation package com. The Cairngorm framework is the mainstream framework for Flex application development, the framework is based on the MVC design pattern, it simplifies the application development model.
The SaveEmployeeEditsEvent event is dispatched: Typically every action of view will need create a event: Model Locator carries all the transport information between the components It is a Bindable object; Service Locator defines the flsx to communicate with datasource Httpservice, Webservice,Remoteobject. Custom events extend the CairngormEvent class an have a special property to contain the data that comes with it.
List of Flex frameworks
In Cairngorm everything should be mapped to an event. The View portion of the employee list gets updated automatically as a result of data binding. In application, it strives to construct a user-centered, independent, open and rich user experience mobile learning information system.