Mike, > Isn't there an article covering the topic of WHAT Cairngorm > is? How it works? Explain in plain English as to HOW the > proposed structure and included "helper files" enhances the > developers ability to create RIA's (which are scalable in nature).
First of all; Cairngorm is not intended as something that we expect people to pick up the *same* time they are getting to grip with Flex. As you build big, enterprise-level Flex applications, there is going to come a point where you have multiple developers working on the project, and run the risk of them all solving the same problem in multiple different ways. As your application becomes more complex, you are going to want to address that complexity with a well understood technical architecture. You are going to want that technical architecture to clearly separate the roles in a multi disciplined development team, you are going to want your application architecture to promote, enable and encourage reuse - reuse of business object, reuse of business services, etc. You are going to want that application architecture to allow you to inject complex functionality in a well understood manner -- Todd Boland's excellent post on creating a SecureCommand base-class being a fantastic example of this. As J2EE developers, we learned a lot from using the Core J2EE Design Patterns from Sun in architecting our applications. Furthermore, assembling these design patterns in such a way that there was an elegant collaboration and partitioning of design responsibilities, created what has now been coined a "microarchitecture" that would provide structure and skeleton in a generic fashion, to specific web application problems. With RIA, we recognsied that many of the same problems that occured in J2EE enterprise web-application development, didn't go away just because we were using ActionScript 2.0 and Flash/Flex, and so we adopted many of (a subset of) the design patterns, and evolved Cairngorm as a microarchitecture for RIA. I don't intend this next sentence to be patronising, so please don't take as such -- but if you don't get why you would need to use something like Cairngorm, then you probably aren't building applications that merit using it anway. So ... immerse yourself in Flex application development, and only when complexity is starting to bite you in the butt, should you dust off Cairngorm, look through the samples, and look for how we have solved the problems you are (then) facing, with Cairngorm. > Does everybody understand what I am getting at? There is > nothing on the website, that starts at "Ground Zero" - > explaining "What Cairngorm is", "Here is how it works", "Here > is a coding example of a typical way of doing an app, and > then in comparison, the Cairngorm way". Software architecture, design patterns, and microarchitecture are software engineering techniques, not anything specific to RIA, specific to Flex, and specific to Cairngorm. If you really want to understand the motivation for Cairngorm, that would be a great starting place. I honestly would recommend "Core J2EE Patterns" by Alur et al as a great starting place for understanding software architecture and software design patterns, particularly the ones we implemented for Cairngorm: http://www.corej2eepatterns.com/index.htm Alistair and I co-wrote a chapter called "ActionScript 2.0 Design Patterns for Rich Internet Applications", that appears in the "ActionScript 2.0 Dictionary". That's not specific to Flex, but it does go into a great amount of detail as to what the motivations for each of the design patterns are, why we implement them the way we do, in the context of a Flash MX based RIA: http://www.amazon.com/exec/obidos/tg/detail/-/0321228413/qid=1117099256/sr=8 -1/ref=sr_8_xs_ap_i1_xgl14/002-0848388-2547213?v=glance&s=books&n=507846 I think that's probably the level of material you're looking for. Failing that, there's a Breeze presentation I've posted a few times here; to be honest, the slides aren't really the same without someone delivering the words, and the presentation was made available for folks that saw me talk at IBM in Holland. But the introductory slides try and put forward the case for why you might want to use Cairngorm, which I try and define as "If you are building Enterprise RIA". > Sorry for the unusual post, but I just need some > clarifications on Cairngorm. Pretend I am an idiot - and not > somebody who has been following this model for months, and > has a good grasp of Flex. Learn Flex first. Build some apps with Flex until they get bigger and bigger, and then when you know enough to be dangerous and tie yourself in knots, consider Cairngorm your scissors. I hope the above helps -- there's a lot of reading there for you, but that's what you asked for. I just don't have to write it all :) Good luck, it's a rewarding journey you're on, Best, Steven -- Steven Webster Technical Director iteration::two This e-mail and any associated attachments transmitted with it may contain confidential information and must not be copied, or disclosed, or used by anyone other than the intended recipient(s). If you are not the intended recipient(s) please destroy this e-mail, and any copies of it, immediately. Please also note that while software systems have been used to try to ensure that this e-mail has been swept for viruses, iteration::two do not accept responsibility for any damage or loss caused in respect of any viruses transmitted by the e-mail. Please ensure your own checks are carried out before any attachments are opened. Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/flexcoders/ <*> To unsubscribe from this group, send an email to: [EMAIL PROTECTED] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/