April 26, 2007

Adobe Flex is rather good

Writing about Flex Course – Day One from [Ux]

I have just attended a three day Adobe training course on the new Flex Rich Internet Application development tool (with Symbiosis of Leamington). I really am very impressed. Developing sophisticated applications with good UI, data access and run-anywhere capability is now very easy indeed.

Here’s an example. It does a Sitebuilder keyword search (for either “showcases” or “gadget_store”) and populates a data grid with the results. You can click on a page title to open the page.

This may take a while to load the data – i need to add a spinner! Flash 9 required.

In this case I am using the Flex HTTPService to load the data as JSON. The JSON component then converts it to an Array. I convert the “items” array within that array into an ArrayCollection (better than an array), and then bind that data structure to the data grid. Further tweaks are required to turn the Item column into a clickable link.

Here’s the code that does the binding once the data has loaded…

arr = (JSON.decode(rawData) as Array);
var dp:ArrayCollection = new ArrayCollection(arr[0].items);
grid.dataProvider = dp;

That would all be possible in HTML with Prototype javascript. But in Flex it would only take perhaps ten minutes to build. Flex uses the powerful and familiar Eclipse IDE, with almost all of the features and tools that I use for Java development, including debugging and cvs. In addition, there is a visual design tool. Use it to arrange UI components on the page, then switch to developer mode, and edit the code behind the components.

With components for video, images, forms, charts, data access etc, the possibilities are great.

- 6 comments by 3 or more people Not publicly viewable

[Skip to the latest comment]
  1. Horribly sluggish though. It may be easy to make the applications, but I can’t imagine it being much fun using them.

    26 Apr 2007, 20:26

  2. Steven Carpenter

    Not sure what you mean – it’s responsive enough for me here at home via broadband.

    26 Apr 2007, 21:59

  3. Has nothing to do with connection speed. Flash-based user interface controls are noticably sluggish compared to the native equivalent.

    26 Apr 2007, 23:25

  4. Steven Carpenter

    Disagree. I don’t perceive any noticeable difference between the response time of a button sitting in a Flash applet and those in a browser.

    27 Apr 2007, 00:18

  5. Robert O'Toole

    If I put a breakpoint in just before the code parses the JSON, and step through, I can clearly see why it is sometimes slow. Flash is running really quickly, even in debug mode. Sitebuilder’s keyword search is sometimes very slow, and consequently it is taking a noticeable amount of time to get the data from the server.

    This is a known problem that will be addressed soon.

    27 Apr 2007, 06:15

  6. Robert O'Toole

    Flash-based user interface controls are noticably sluggish

    ...nonsense, complete nonsense. Absolute complete nonsense. You’re so completely wrong that I’m going to say something really shocking in response:

    I am going to give up on javascript/prototype/html development. I’ve been coding js and html for over ten years now, but it is just pointless to deny the fact that Flex is so much better.

    27 Apr 2007, 08:55

Add a comment

You are not allowed to comment on this entry as it has restricted commenting permissions.