I just started learning Mate for my latest project (An AIR-based price comparison application) about three weeks ago. Having been introduced to Cairngorm at the same time as Flex itself, I was slightly apprehensive about the move as I was totally at home with Cairngorm. But now, three weeks later, and a project 80% finished, I am not only glad that I made the switch, but also regret not having tried it before. After all, Mate has been around for some while and it’s definitely here to stay.
An application framework is a standard structure for a specific development environment that makes development & maintenance easy for individual & teams of developers alike. No doubt, both Cairngorm and Mate serve the purpose, but with varying degrees of success. Here’s a quick, random list of pro’s and con’s of Mate compared with Cairngorm that I’ve noticed over the last three weeks.
The event-map approach of Mate makes complete sense since Flex itself is event driven. The command based approach of Cairngorm seems like a big stretch and increases complexity.
Again, the command approach adds many more classes and lines of codes in Cairngorm which are considerably lessened when using Mate.
The application code is much more tightly bound with framework code in Cairngorm, such as the use of Cairngorm events. This is not the case with Mate.
Event bubbling can be caught/listened without having to write any excess code.
Easy learning curve. I remember Cairngorm gave me a hard time as a beginner. Compared with that, learning Mate was a breeze. The documentation is excellent. Furthermore, the tag based of Mate approach is always easier to learn.
Cairngorm has a much more modular structure, more suited to the Flex MVC architecture that adheres to basic OOP concepts. This offers great advantages in larger enterprise level application development scenarios. Projects are more readable and work can easily be split into various parts and assigned to different teams.
The use of delegates makes use of dummy data simple to replicate server side behaviour. Client side development is not hindered by server side development issues.
And lastly, the thing that bugs me the most. While tag based approach is simpler and easier to learn, it is also hard to debug. Small errors are hard to find and more than a few times, problems are detected only during runtime and not during compiling. Simple mistakes such as a spelling here or there can lose you a lot of time.
While it may seem to some that the balance is tipped in Mate’s favour, it would be a rather harsh judgement. A closer look would show us that depending on the scenario, there is room for both. In fact, there is a NEED for both. The advantages of Cairngorm makes it much more suited for larger, enterprise level applications that are robust while Mate is more suited for smaller applications which needed to be executed swiftly.
My conclusion – it is important that a good Flex developer be able to easily switch between both the frameworks if he wants to deliver his clients the best that Flex has to offer.
IoT mobile apps, the next big thing for current COVID-19 and future pandemics [Ultimate Guide]
In times where technology is a part of our everyday routine, the extension of its features to everyday devices is a peek into a futuristic world. For instance, when the pandemic struck, the need for remote monitoring was on the rise, more than ever. Gathering resources and medicines, consultation with doctors, monitoring of beds had […]
Healthcare mobile app development for organizations to address the disruption caused by the pandemic
In an increasingly convenient world where groceries, food, clothes are available at the click of a button, it was the healthcare sector that quite remained rooted to its traditional ways. However, since the onset of the pandemic, social distancing and other preventive measures, the usage of healthcare apps has seen a significant boost. Patients and […]
Mobile application Development Trends in 2021 in the Post-Pandemic Environment
The COVID-19 pandemic has exponentially triggered a big-time financial crisis, hurting practically all domains of life, including travel & tourism, real estate, leisure activities, small local businesses, and the quality of life of every being. However, the crisis has given birth to the vital need for digital solutions and developments that would help people face […]