|Opinion: Mixed Macromedia Messages|
Opinion - Flash
Mx 2004 ActionScript 2 - "Danger Danger, Will Robinson, Danger Danger"
But as rich media become ever more important not just on the desktop and Web, formidable opponents are starting to show up. Microsoft, for one, wants to make the desktop the client platform of choice and has a two pronged approach to garner more presence in the market. Windows Media Player will be the compressor and deliverer of MS rich media; "Sparkle" will be the development tool. Meanwhile Sun, repulsed from the desktop by Microsoft's antitrust guilty actions. has designs on the mobile, PDA and even the desktop. And the Java engine certainly has the cross platform reach and horsepower (but also bulky size) to pose a threat in certain market segments. Finally, there is a bevy of start-ups and long time players being fueled by industry standards such as SMIL for multimedia, X3D for 3D modeling and SVG for vector graphics. These players have embarked on a variety of rich media systems.
So it is no surprise that Macromedia has put a lot emphasis in the latest versions of Flash on scripting (primarily ActionScript) and networking (Flash Remote and Flash Communication Server). This allows it to keep ahead of the rich media pack But all this effort has come at the expense of less designer and graphics enhancements to Flash. In fact 3rd parties such as Adobe, Corel, Swishzone, Swift3D, ToonBoom and others are leading with enhancements to the various designer tasks required to produce top notch 3D, animation and design experiences in the form of .SWF Flash runtimes.
The problem is this - in the process of building more data processing muscle into ActionScript 2, Macromedia has sacrificed ease of development and use in several ways.It has also gotten ahead of the ECMAStandard. Finally, Macromedia is continuing a bad tradition of not providing developers with migration tools for getting from there to here(ActionScript 1.0 or earlier code to ActionScript 2). These are the "Danger Danger, Will Robinson, Danger Danger" signs.
Specifically, on ease of use ActionScript has gone from a case insensitive to a case sensitive language. BiGone and Bigone and bigone are now different names and objects in ActionScript 2. The curse of Unix, case sensitive filenames, is now imported in general into all naming in ActionScript 2. Next, strong data typing is being introduced into ActionScript 2 as an option. Heretofore the following has been legal: var ii = 33; ii="a string now". But with ActionScript 2, if you declare var ii:number = 33; ii="a string now"; the latter statement will raise an error. All fine and good as long as the weak datatype or variant structure is retained in ActionScript. But this refugee from Visual Basic knows what happened to that language and its Variants. They were dumped in the name of object oriented purity. In fact, VB.NET is so different from VB6 and so close to C# that developers are deserting it in droves and just moving from VB directly to C#.
There are many changes to object and class definitions in ActionScript that bring it closer to Java in syntax. Nothing wrong here as long as the old object definition syntax forms are retained. The attraction of ActionScript is the ease with which user objects could be created in ActionScript 1. The danger danger is that these old forms will be deprecated and then lost. Then ActionScript will just become Java; like VB became a C# knock off (which is just a Java knock off). Not good. Ease and speed of development is the order of the day in programming. We need languages that are orthogonal to our leading languages like C/C++ and Java/C#. Hopefully, as Macromedia rushes to defend its turf, it will allow ActionScript to retain its ease and speed of coding roots while judiciously expanding its rich media and data processing capabilities.
Top of Page OpenSourcery Home Tips & Tutorials