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.
Things to Consider Before Hiring the Right Developer
As the tech talent war continues to rage, it is no wonder that hiring the right developer takes forever. Managers face numerous difficulties not just hiring but retaining the right talent.If we are to go by statistics, the average time-to-hire for tech positions in the USA is 35 days. A realistic expectation is crucial while […]
4 Ways To Reduce your App Development Costs by 50%
Being multi-channel has become synonyms with the modern digital environment.Brand presence in these channels is critical to reach potential customers making it a vital business challenge of the digital era. Mobile apps have become an integral part of modern business. They are an extension of your brand. Considered as the most powerful business tool, apps […]
Tips to build a productive startup culture in your development company
The word Startup paints a picture of tech-savvy professionals driving casual dress codes and sipping coffee from biodegradable cups in a space with enviable interior design, ping pong tables and bean bags. Ouch, the stereotype hurts! There is more to startups than bean bags and beer taps, it is the startup culture that fuels innovation […]