Home / Blogs / Matt's blog
Flex microarchitectures - Cairngorm vs Mate
I've recently been comparing various Flex architectures for managing business logic and server communications. The two main systems I've been looking into are Cairngorm and Mate.
The chief reason for the investigation is that we have a framework in Flex that evolved from Flash. We re-wrote the presentation layer from scratch in Flex 3 but the business layer is a separate project that deals with communication with our backend server and is reused in other Flex and Flash projects. Whilst this works well, the business layer project doesn't take advantage of data binding that would make the presentation layer run much more smoothly.
Whilst my experience in Cairngorm and Mate is minimal at present, I've written some basic test projects to compare the two. Initially my prefere the nce is Mate because it takes more advantage of MXML and isn't as laborious as Cairngorm. However, Cairngorm has one redeeming feature whereby all server communication is kept in one place. With Mate, the server comms are combined within the event handling code which isn't as clean.
However, the really big issue I have with both is that they don't aid with modularization. The current business logic project has a defined and documented API that any other project (and developer) can use. With Cairngorm and Mate (and indeed any other MVC style architecture) everything is rolled into one, from the server communication information, through the event handlers, data storage right to the user interface views. This does not lend itself to easily abstracting out the business logic into separate a project for use elsewhere.
I'm still working on these architectures, and I'll get some walkthrough projects on the blog in the coming weeks. In the meantime, if anyone has ideas about breaking out MVC architectures into reusable modules, please let me know!!!

I have wrote a fairly complex project using cairngorm and your statements regarding how cairgorm does not easily lend modularization of business logic rang true for me as well.
I have just started looking into mate and it has a very similar feel to cairngorm. so at this point I am not expecting much.
I have also investigated MVCS. it's not a framework, but an architecture view point for flex. I have integrated it into my current project to handle a few business events. I definitely like it better than cairngorm. I would check it out if you like having a more traditional "controller" to contain and extend business logic.
mobile phone holders
walkie talkie
CNC Engraving Machine
Engraving Machine
voip products
tv accessories
fiber optic equipment
Computerized Engraving Machines
Desktop Laser Engraving Machine
Laser Engraving Machine
Telecommunication Tower
WiFi Finder
PBX
Mobile Phone Accessories
hbsem
http://puremvc.org/content/view/67/178/
I'm no expert, but I think PureMVC MultiCore Version works with modules