I've had a couple of weeks to explore ActionScript 3 (AS3), and I've encountered nothing to discourage me from encouraging you to make the upgrade. Here are some points to consider:
- AS3 offers Integer (int) and Unsigned Integer (uint) Data Types in addition to the classic Number Data Type. They're still Primitive Data Types (passed by value, not by reference), and offer some significant advantages of efficiency. Both int and uint circumvent Floating Point calculations, and both are only 32-bit entities. If you aggressively use Math Class Methods (e.g. atan2, cos, sin) to prescribe movement, you can probably sense the possibilities...
- Functions are now Objects! This answers my concerns about the loss of Behaviors and Components to some extent (AS3 cannot be attached to Objects, period). Thus, there is a top level Function Class with its own Properties and Methods, and Functions (as Objects) can be passed as Parameters to other Functions! This is a shrewd modular strategy-when a Function is passed as a Parameter, it is passed by reference. Adobe describes the situation this way: "Function properties can serve as quasi-static properties..."
- There are some fundamental changes in the uses and scoping of Variables in AS3, too. The var Keyword is always used in declaration, and a Variable declared outside of a Class Definition or Function is Global (a Local Variable is declared inside a Function). If you act middle-aged and define a Global and Local Variable of the same name, the Local Variable will displace the Global Variable while it (the Local Variable ) is in scope.
- Event Handling has changed significantly-so much so, that it will need to be covered in its own post. For the purposes of convincing you to make the upgrade, I'll state that it's much more intuitive to learn, streamlined to produce and debug, and naturally conformed to the OOP strategies of AS3.
I am more convinced than ever that interactive animation is the future of imaging, and it's not simply the communicative abilities of the medium or the zeitgeist of avant-garde cartooning and gaming. It's also the power of the production tools at our disposal that are rapidly advancing the efficient creation and sophistication of our work.
L
Comments