| In my opinion Flex is still the best UI framework I have ever worked with, and I've worked with many. 1. Source code for the framework was available in the default flex builder installation. Wanna see how adobe designed the default table renderer, drop right in and look. You didn't have to search online for how to use esoteric features, you could just look at the super class to see the code path it takes. This is my biggest complaint working with Apple and MS frameworks. 2. Proper handling of component invalidation. Many other frameworks still have problems with calling methods out of order during initialization. Flex collects all changes to a component before processing them in the invalidation loop. 3. Data binding let you do some really cool things by automatically wrapping them in anonymous functions to process like
<mx:Button id="myButton" enabled="{isButtonEnabled(someString, items.length)}"/> 4. Lots of support for component customization, especially in the skinning department. Going from flex back to mac cocoa was like going from paintbrushes back to using twigs to draw. However, the biggest downfall for flash was always the performance, they were stuck in a corner because the flash engine was designed first and foremost for processing frames of animation, on the cpu, in another programs window, with no control over their own run loop. |
I totally agree overall, I felt like Flex was a fantastic development environment. It was the final, flash-based product that usually ended up lacking, but you could create some cool stuff with it.