Macromedia's Flash Eases Programming
Flash's huge adoption rate is helping Macromedia sell Flash-based solutions such as Breeze. With this new platform, the company is expected to increase its Flash programming model by providing a solid architectural road map for developing presentation code.
However, developing in the Flash Authoring environment is difficult and counterintuitive for corporate developers. As part of the new platform, MXML (Macromedia Flex Markup Language) programming framework, called Flex, solves some of Flash's tedious user-interface development issues by simplifying presentation code using XML tags. Along with ActionScript, Flex provides a clear MVC methodology for decoupling presentation logic with server-side logic.
The framework works well in a services-oriented architecture (SOA) because Flash provides Web services and XML over HTTP connectivity on the client side. However, Flex apps are limited as offline clients because they cannot perform data transformations and output presentation logic using MXML internally. MXML only abstracts display logic in ActionScript, so server connectivity must be present to produce this effect. Because Flash's Web services connectivity is limited to single domains, Flex apps also must use servers as proxies.
The Flash Platform supports J2EE and .Net managed code through SOAP, RPC to remote Java objects and its proprietary AMF protocol. Currently, Flex does not have any support for the WS-* stack. The lack of support for these standards severely limits developers from taking advantage of SOA's full capabilities using Flex.
To combat some of Flash's limitations, the platform incorporates a tool called Central, which allows Flash applications to run outside a browser. Despite the limitations, Flash provides a sophisticated programming model that is extremely stable. In the next version of Flash, Macromedia is adding more behaviors, allowing for greater functionality of user interfaces.