A couple of years ago, before Adobe bought Macromedia, I had an occaision to dip into some Flash development. As a software developer, the entire Flash environment was so alien that it was useless. The whole thing was predicated on a movie concept and was just awkward to write code for. Happily, I didn’t spend a lot of time with this and moved on to other things involving programming languages not writen by spastic artists.
Flash forward (yeah, yeah) to the present and I was asked to look into some Flash stuff for work. Needless to say, I wasn’t looking forward to this, but I fired up Adobe Flash CS3 and started doing some reading… I was surprised. Clearly the best thing that happened to Flash as a development platform was Adobe, it was significantly better put together, structured much more logically, and allowed me to totally ignore the whole movie concept.
This isn’t to say that Flash has shed all of its legacy, but its ActionScript 3 is light years ahead of the previous versions. Yeah, there’s some goofy things like not having the libraries in the class path by default, having to drag components onto the stage before you can use them, and the like, but it’s actually not pain-inducing like the previous versions were. I do have some suggestions for the next release, though:
- Fix the default class path. I shouldn’t have to dig around to figure out where it is in order to use the standard libraries supplied with the compiler.
- Don’t force me to add components to the stage to use them. It’s a library, if I reference it and use it, link it in with the compiler.
- Fix the action script editor for the frames so that it is integrated with the tabs for the actual flash and any external scripts. This is pretty annoying, to switch between I have to collapse the frame action script window, select the new tab, edit, and then to switch back select the flash instance tab and expand the action script window. Huh?
- The Java model of directories and file names matching the namespace and the class instance is retarded. If I have a package called “Grumpy” and a class called “Grump”, then the class has to be in a file called “Grump.as” in a directory called “Grumpy”. That’s directly a result of a lazy developer.
- Following on with the previous, let me define more than one public class in a file. Again, this is a retarded Java model, and is irritating.
I may expand the list a little more as time goes by, but nobody has the bandwidth to see my complaints about the previous versions of Flash, so this is an enormous improvement. Good work Adobe, now just make it better.