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.
|Genre:||Health and Food|
|Published (Last):||21 May 2013|
|PDF File Size:||18.10 Mb|
|ePub File Size:||12.77 Mb|
|Price:||Free* [*Free Regsitration Required]|
A collaboration of recognized design patterns, Cairngorm exemplifies and encourages best-practices for RIA development advocated by Adobe Consulting, encourages best-practice leverage of the underlying Flex framework, while making it easier for medium to large teams of software engineers deliver medium to large scale, mission-critical Rich Internet Applications.
Cairngorm follows the principle of separating the view and business logic which is known as the Model-View-Controller pattern MVC.
The following list shows the different elements that flwx the framework. Contains UI controls for user interaction and displays the state of the models data. Views dispatch events handled by the controller.
It acts as a centralized repository for all data needed in the application. It manages the view an is declared as [Bindable] frameworrk use all variables for data binding in the view. It must be implemented as a singleton which implements the Cairngorm IModelLocator. All data managed in the model should only be updated through a command or a responder object.
Agile Enterprise Application Development with Flex by Tony Hillerson
A value object is a class that only has properties to store values. It contains no methods or logic and acts as a pure data container. Value objects must implement the Cairngorm ValueObject interface. By doing so, Flex automatically converts an server-side object returned through remoting or data service interaction to its corresponding ActionScript object. In Cairngorm everything should be mapped to an event. Whenever the user interacts with the view or an action occurs an event must be dispatched.
Custom events extend the CairngormEvent class an have a special property to contain the data that comes with it. Commands actually do the majority of an applications work. They recieve the event and its data, execute the logic an can change the workflow state of the model and view.
Each command must implement the Cairngorm ICommand interface and its execute function. The revcieved event is a generic CairngormEvent and must be casted to the appropriate custom event first. The complete frontend-logic of the RIA is encapsulated within the commands. It extends the Cairngorm FrontController class and maps the dispatched events to its corresponding commands. Therefore it has two methods: The controller is instantiated directly in the main.
You simply need to add the directory your class is in as an XML Namespace and then include the tag in the file. Implemented as a singleton, it contains references to all services an application will use. Like the Front Controller, it is placed within the main. Business Delegates form an abstraction layer between the server-side services and the main frontend application.
The locate the required service in the Service Locator, call the given method on it and route the response back to a responder object. Unlike the other elemente in the Cairnhorm architecture, it does not extend a class or implement an interface, but it need to follow some guidelines: And it must have implemented one method for each server-side method to be called.
The delegate is created within a command object. It should only pass strongly typed value objects to a responder. If it does not recieve an cairngoem object, it must create one before passing it. Responders implement the mx.
A responder recieves the result of a service call and implements frontend-logic like a command. It directly may set values of the model and should only deal with strongly typed value objects. It Accepts the service requests from the RIA and responds back data. With a remoting technology like BlazeDS it is even possible to pass back value objects witch are transformed to their corresponding ActionScript objects in the application, so it can interact with them as if they are created by script.
You are commenting using your WordPress. You are commenting using your Twitter account. You are commenting using your Facebook account.
Notify me of new comments via email. Notify me of new posts via email. Enter your email address to subscribe to this blog and receive notifications of new posts by email. Leave a Reply Cancel reply Enter your comment here Fill in your details below or click an icon to log in: Email required Address never made public. Post was not sent – check your email addresses!
Introducing Cairngorm | Adobe Developer Connection