What is Adobe Flex and what are the myths about it ?


Adobe® Flex™ 2 is a complete, powerful application development solution for creating and delivering rich Internet applications (RIAs) within the enterprise and across the web. It enables enterprises to create personalized, multimedia-rich applications that dramatically enhance user experience, revolutionizing the way people interact with the web.

Adobe Flex Builder 2

Adobe Flex Builder™ software is an Eclipse™ based IDE for developing RIAs that combine the richness of desktop applications with the cross-platform reach of the Adobe Engagement Platform. Flex Builder enables developers to quickly build rich client-side logic that integrates with XML, web services, or Adobe LiveCycle® Data Services ES and other LiveCycle solutions. With sophisticated design and layout tools, user interface designers can also create richer, more usable application interfaces with a customized look and feel.

Adobe Flex Charting 2

Flex Charting software provides a rich library of interactive charts and graphs that enable rich data dashboards and interactive data analysis. Dynamically rendered on the client and with full support for the Flex data-binding and event model, the charting components make it easy to add drill-down, rollover, and other interactivity that makes your charts even more insightful than before. All of the charts can be extended to provide additional functionality, or developers can use the base classes to create customized chart types.

Adobe LiveCycle Data Services ES

LiveCycle Data Services ES (previously called Flex Data Services) software provides a comprehensive set of data-enabling features for using data in Flex or Ajax based RIAs that revolutionize the user experience. A powerful data services architecture and programming model enable RIAs to synchronize data between client and server to produce optimal customer engagement experiences with less code, less risk, and faster time to market. LiveCycle Data Services ES also opens up powerful new services to rich applications including document and form server processing, workflow, and more. Start building applications today with free LiveCycle Data Services ES Express, a single-CPU production license.

Adobe Flex SDK

The Flex framework is a component-based development framework for delivering rich Internet applications for the Adobe Flash® Player runtime. Combining standards-based languages with a rich set of extensible UI and data access components, Flex enables developers to rapidly construct applications with rich data presentation, robust client-side logic, and integrated multimedia. Applications built with Flex run across all common desktop platforms, enable complete customization of the application look and feel, and support a full range of methods for connecting to back-end data and services. The Flex SDK includes the Flex class library as well as the MXML and ActionScript™ 3.0 compiler.

Top 10 Myths about Flex 2.0

1) Flex requires a Flex Player!


The Flex SDK creates SWF files that run in the Adobe Flash Player. A developer compiles MXML and ActionScript 3 into a SWF which can be deployed to any web server. Flex and Flash share the same runtime, Flash Player, to create rich Internet applications.

2) Flex requires a special server!


Flex SDK creates SWF files that can be deployed to any web server. Yes, any web server, period. There is nothing special to install, configure, or manage server-side. The confusion here is that Flex 1.5 used to require a server and this myth is a legacy hangover from nearly 3 years of Macromedia product marketing. Flex 2 is different, no server required!

3) Flex costs a small fortune!


The Flex product line starts with a low costs of FREE!!! Yes you can build RIA's with Flex SDK no strings attached, no fees, no hidden rules, nothing, nada. Flex SDK is free like beer folks (pretty good beer too!).

MXMLC Compiler - Compiles MXML and AS3 into SWF files.
COMPC Compiler - Compiles MXML and AS3 into SWC Libraries (precompilation/packaging)
Flex Framework - Classes containing all UI components (Less charting)
Debugger - Debug SWF files at runtime via the command line.
Compatibile with ANT - Fun for the whole family!

Flex Builder 2 (Eclipse Based IDE) - $499
Contains the Flex SDK
Coding tools - Syntax Highlighting, Statement Completion
Integrated compiler - inline errors and incremental compilation
Interactive Debugger - Breakpoints, variable inspector, expressions
Visual Layout - Drag and Drop components, Skinning Styling
Standalone or as a plugin to Eclipse

Flex Charting Components - $299
Killer charting components!

Flex Data Services Express (J2EE Server) - FREE like Beer (limit 1 CPU and minors under the age of 21)
If you have 1 web server, honestly, this is all you need.
Web Teir Compiler - Compile MXML and AS3 on the server.
Remoting - Remoting optimized for J2EE integration
Messaging - Distributed events from other users connected to this server.
Data Management - Data synchronization between connected clients and conflict resolution. Data management gets inside of the transactions and adds multi-user data exchange into applications.
No clustering or Failover on the Express Server. :(

4) Flex applications can only exchange data with special servers.


The Flex application SWF files are capable of communicating with any HTTP/HTTPS or socket based server. Here is what you can do:

- Exchange any format of ASCII text (POST,GET,REST Headers Supported)
- Exchange any format of XML (POST,GET,REST Headers Supported)
- Talk to any server side language (.NET, RUBY, PYTHON, JAVA, PHP, PERL, XML)
- Exchange data using SOAP direct to the server (many soap encodings supported)
- Exchange binary AMF (Optimized data serialization format for remoting, paging). This is supported in ColdFusion and JRun by default and there are many free AMF libraries for .NET, JAVA, Ruby, PHP
- Exchange data in real-time using 2 way push over XMLSocket and BinarySocket. These features are unique to Flash Player (See #1 - Flex runs in Flash Player) and allow communication to socket based servers. I have seen Flash Player used to create clients for POP3,FTP,SVN,XMPP, and all existing socket based media servers. This can be done over low ports too provided that server permissions are used.

5) Flex doesn't play well with AJAX.


A Flex SWF file can talk 2 way over JavaScript. We are seeing explosive growth of AJAX leveraging features in Flash Player to optimize/improve AJAX applications. Flex can leverage the Flex AJAX Bridge to make data exchange between Flex and AJAX seamless. The 2 top investment portals ( Yahoo and Google )use Flash Player for charting and AJAX for the user interface.

6) Flex apps can only be full screen.


A Flex can be used to make widgets and panels within a larger HTML or AJAX application. Flex can be used to invisibly exchange data which is rendered using AJAX. Some are using Flash Player for XML parsing in AJAX or providing real time communication. There are several video companies providing Video player widgets in Flex 2. In some cases, full screen flex is ideal, in some it isn't.

7) Flex is hard to learn.


The hardest part about learning Flex is understanding the component development model and the MXML translation paradigm. It took me a month before I felt comfortable coming from Flash to Flex. If a you have used PowerBuilder, VB, Delphi, Visual Studio, Java expierience, you will take to Flex like a duck to water. In Flex you work at the component and container level to build the user interface with XML markup. Events, functions, and bindings are used to wire the application together. When you compile, MXML is translated into ActionScript 3 classes and then compiled to a SWF for playback in Flash Player.

Just like any programming language, it takes time to master Flex. Rome was not built in a day and neither are great developers.

8) Few real projects are using Flex!


There are many mission critical apps deployed within intranets around the world. Just because you haven't used an executive dashboard in Flex 2 doesn't mean they do not exist. Many of the top companies powering the world economy are using Flex internally for apps that run essential parts of their business. The first market for Flex is intranet applications and already there are many Flex 2 applications already deployed.

9) Flex and Flash do not work together.


Flex and Flash both deploy to SWF and both run in the Flash Player. Becasue they share the same runtime, they both have the same DNA and thus are at a low level compatible. There are many ways to reuse Flash SWF content at both runtime and at compile-time within Flex applications. You can today import and reuse any Flash animations or vector graphics within Flex via the [Embed] Meta tag and this includes support for specifying 9-slice scale parameters too. When CS3 ships we will see many tools able to contribute more directly into the Flex development model.

10) Flex is slow.


Flash Player 9 and ActionScript 3 was designed for speed, period. Flash Player 9 contains a JIT compiler that runs code over 20 times faster than prior versions. The performance gains are attributed to the player generating PPC and X86 machine code nativly at runtime. Yes, you read that correctly, when ActionScript 3 is being executed it executes as native machine code. It is not just faster, its blazing fast.


Want to discuss your Flex project requirement with us?
To have Emax contact you about our services, click here:

Mailing Address:

Emax Software
4th Floor, Jomsons Tower
P.O. Road,
Thrissur – 680001,
Kerala State

Telephone : +91-487-3295336

Enquiries: info@emaxsoftware.com
Software Sales: sales@emaxsoftware.com
Jobs : careers@emaxsoftware.com


“The technology used by RIAs enables true cross-browser and cross-platform delivery, and is now on 98% of desktops – that’s deeper penetration than MS Windows.”

flex flex flex
© 2003 EMAX SOFTWARE. All rights reserved.