Developing RIA with Flex fun..
What and why is RIA?
Like fashion industry technology also swings back and forth. Initial when client server architecture was introduced industry started moving in the direction of developing desktop based rich applicaiton which talks to the server. But later architecture matured and industry wanted many clients to access the application so it rediculously called the desktop application as thickclient. and industry stared moving in the direction of thin client funda like HTML and other dynamic web technologies. Now again industry started missing the richness in the traditional destop based thinkclient , and it also got bored with the HTML based request response model. This gave the birth of RIA… FLash and silverlight.
Their aim is to develop thin-think client that can run in browser and still hide all request response boaring stuff that webclients were experiencing.
Flex was the fourrunner in t his market.
Flex development nightmares?
Developing application with flex builder a sample flex program will all be a easy going task . But the real nightmare kicks in when the applicaiton grows big. When you want to build a real production system out of it. The front end MXML becomes really messy. You will have a single monolythic mxml file where we have to keep writing actionscripts and mxml. We can seperate actionscript into seperate file and mxml into multipel file but you will hit a point were you cry for framework.
Cairngrom would be your rescue.
What is cairngorm?
Cairngrom tries to bring in the tradional software engineering best practises in to the Flex applicaiton development.
It is a way you fit in your
1. Business Delegate
2. Service locator
4. Model Locator.
5. Front controller
Kind of patterns in to your flex development. The time to adopt cairngorm frame is bit more but once it is done and when we start fitting in pieces it really pays of.
Following picture gives a architecture of a cairngrom based flex application.
For more details on cairngrom follow some of my favourite links below.
http://sujitreddyg.wordpress.com/category/flex-and-blazeds/ A good fellow developer on the same lines.