BT

Case Study: Applying Java Programming Skill to Flex

| by Moxie Zhang Follow 0 Followers on Jan 24, 2008. Estimated reading time: 2 minutes |

In an article published on Adobe Flex Developer Center, Bill Bejeck shares his experience creating components and enforcing separation of concerns with Flex, from a Java developer's perspective.

Bejeck's first impression when started using Flex was:

As a Java developer I was surprised at how familiar ActionScript 3.0 was, making the learning curve fairly flat.  Once I started using Flex, it was great to see that I could use most, if not all, of the approaches to writing software that I was used to.

In the article Bejeck is trying to create components with a mixture of inheritance and composition, and enforce separation of concerns, especially between view and business logic. His Java application development skills come in handy. As he writes:

As an experienced Java web developer, I learned over time that a JSP page should be used only for presentation.  All business logic should be in classes, and if you absolutely had to have code in your JSP page, you would wrap it up in a custom tag.

In Flex, ActionScript code can be included in a MXML file using tag, which is a similar feature of JSP page where Java code can be embedded. However, learned from working on other programming platform, Bejeck employes a practice called "code behind" where visual component is defined completely in ActionScript 3.0, and use MXML to decide how the components are visually rendered. Regarding this approach, Bejeck reminds the readers:

This is an architectural approach for building an application. If you are doing quick prototyping, there is no need to always use the "code behind" technique.

Then, Bejeck goes on describing the process in details, with code segments, on how he extended the Flex build-in visual components such as DataGrid, Panel, TextInput and Button to construct custom components and event handlers. At the end, a simple 8 lines of code MXML file is shown for rendering the UI and to demonstrate the clean UI design.

Bejeck concludes:

As you can see, by using the "code behind" approach, your code is very concise and maintainable.  As you develop more complex applications, not only would you have a palate of components, but maintenance and changes to your applications would be very manageable.

Bejeck also recommends two books in the article to readers who are interested in learning more about programming in ActionScript 3. They are

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

I agree by Matt Giacomini

As a Java developer that learned flex I agree with author, the learning curve was almost nothing. There are a few small thins that annoy me about Actionscript, but none of them affect my productivity, the maintainability of my code, or the quality of the final application.

I think the author should also have mentioned the cairngorm framework for Flex. Cairngorm makes it easy for you to apply some of the most common design patterns in flex. From the point of view of a Java developer, used to using frameworks, it feels very natural.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

1 Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT