Mike Morearty
23 Oct 2007

More Flex Builder 3.0 debugger features

I’ve been meaning to post this ever since we released Flex Builder 3 Beta 2 a few weeks ago. There are some nice debugger enhancements I wanted to tell you about (in addition to the features that were in beta 1, which I described in June).

Hierarchical variables view.

Reduces clutter in the Variables view by grouping all superclass members in a separate tree node, so by default you only see the members of the current class.


Much faster single-stepping.

Previously, if any variables such as “this” were expanded in the variables view (so that their members were visible), then single-stepping in the debugger was somewhat slow. It is now much, much faster – in fact, single-stepping with variables expanded is just as fast as single-stepping with variables collapsed. In one quick test I just ran, single-stepping in Flex Builder 3 was twenty times faster than in Flex Builder 2. In Flex Builder 3, I can just hold down F5, and even on a slow machine, it is executing about ten single-steps per second.

No more “Where is the debugger” dialog.

Now when the Flash player runs a debuggable application (swf) but can’t find a debugger, it just runs the app, with no annoying dialog. (If you want to force it to prompt for a debugger, do right-click > Debugger on the swf running in the browser.)

No more separate debug swf in your bin folder.

Flex Builder 2 created YourApp.swf and YourApp-debug.swf – and also YourApp.html and YourApp-debug.html. Flex Builder 3 no longer creates the "*-debug" files. This speeds up compilation – Flex Builder only has to create one swf – and greatly simplifies writing code that has to refer to other swfs by filename.

In Flex Builder 3, the files in the “bin” directory are debug files. (Before we ship, we will probably rename that folder to “bin-debug”.) To get the release files, use the Export Release Version command, which creates a separate “bin-release” directory. There are more details in this blog post and in this video.

comments powered by Disqus