Wednesday, July 8, 2009

Getting Started with Flex – for Java Developers

Good news for you guys. If you are a Java developer and want to learn Flex then you are in a great demand. Many Flex applications are developed in conjunction with Java where client server architecture is required. Java is a preferred choice for developing server side solutions and Flex for developing rich client applications. You will have an edge over others as you will know both.

Flex applications are just like Java applets which run on client computer and can connect with server side applications for business logic and data. However, Flex is much richer in user experience because of its support for rich media, effects and interactive elements.

I will be repeating some of the text from my previous post ‘Getting Started with Flex – for Flash Developers’ as this is applicable to Java developers as well. In Flex, there are two ways of developing an application, MXML or/and ActionScript 3. MXML is an xml based language developed by Macromedia before Adobe Systems acquired Macromedia. There is no official meaning for the acronym MXML, but the backronym used by some developers is “Magic eXtensible Markup Language”. MXML is primarily used to layout the application interface (which can be done in Design View of Flex builder which eventually generates MXML tags). However, MXML can also be used to write business logic or application behavior for small applications. MXML can be used in conjunction with Action Script to write complex business logic for applications. It gives an opportunity to a person with not very strong in programming background to be able to develop RIA with ease.

Flex has component based architecture. It is shipped with many exciting components for developing Rich Internet Applications. Developers can create their own controls in MXML or Action Script to write the business logics or application behaviors. These components can be compared with Java Beans. The output of a Flex application is SWF which is targeted to Flash Player 9 or above. Flex has some effects and transitions which can be used to create cool interfaces. One can also extend and create his own effects in Flex.

As I said earlier Flex applications run on client side and have no direct access to database resources or other resources which are not allowed to be accessed by client applications. However, Flex applications do have a way to connect with such type server side resources with the help of Web Services or Remote Procedure Calls. As you are coming from Java background, you can use Java to write Web Services and access them in Flex to provide dynamic data.
Application development in Flex can be done by using free open source Flex SDK or Flex Builder 3 (Flex 3 is the latest version of Flex and the next version will be called Gumbo) Software provided by Adobe. Flex Builder can help a developer accelerate application development. If you are looking forward to develop RIA in Flex, there are many nice books available along with the resources/tutorials provided on Adobe site. Some of the books you may consider are McGraw Hill’s ‘Flex 3 A Beginners Guide’ or ‘The Essential Guide to Flex 3’ by friends of ED.

Happy Learning…

No comments:

Post a Comment