The greatest thing about the Flex Framework in my eyes is its utilization of an XML based language (MXML) for it’s primary scripting. MXML allows you to create, bind and structure objets in a very straightforward manner. This then leads into other advantages such as rapid prototyping and development and so on and so forth.
Mark-up languages have always been easy to author and understand, just look back at HTML for example. Your average person interested in tech could pick up basic HTML in a very short space of time, then boom, their a web developer just by understanding the behavior of a few predefined tags. A mark-up developer never really wonders why the page is working the way it is, they never wonder why they get constraint and layout flows for free and its OK if their code isn’t perfect as they still get some kind of output from it (unless they went wild with a comment tag).
And so now with MXML, it’s proven that an XML based language can work in the context of creating ActionScript applications. So why is MXML limited to the Flex Framework? Well, the simple answer is that a lot of the META-tags and curly-braces used in the MXML language are only compatible with the Flex Framework. Those little snippets are the worker bees of the Flex Framework who fly around making sure everything is hooked up correctly into the underlaying ActionScript.
So does this mean that Flex-less MXML is nonstarter? Well almost, as I mentioned before, MXML’s rules, constructs, methodologies are all linked to the Flex Framework. But what if we could create our own rules, create our own “worker bees”, then we would have Flex-less MXML right?
This of course throws up a thousand different questions like: Would this even be know as MXML anymore? Would it give birth to languages such as FVX (XML for Flash Video) and GEXML (XML for Flash Gaming Engine) or FFBX (XML for Flash Facebook Applications)? How would you define all the rules need to create these languages? Cant we just build our own compilers for this?
Would the creation of all these variants be a good thing? Who knows, who cares!, the point is that then people would have a choice of how they want to develop in Flash, this is so important! As ActionScript becomes ever more verbose and powerful, its adoption rate with newbies will fall because its just too much for the casual developer to pick up.
This brings me back to the point about only having to learn just a few predefined tags. The Flex Framework shall only get bigger and so shall its documentation. Its wizards shall grow in number to counteract this growth, but in the end, the framework shall become almost as hairy as AS3 to the casual developer. We need mini XML frameworks built for targeted needs for the Flash Platform to flourish and evolve.
I know this shall happen in the next few years, but the question is when? Shall it be Adobe who takes the necessary steps or shall it be the community? I look forward to the years ahead 