Action Script is an object oriented programming language for the Adobe Flash Player run-time environment. It enables interactivity, data handling, and much more in Flash content and applications.
ActionScript is executed by the ActionScript Virtual Machine (AVM), which is built in to the Flash Player. ActionScript code is typically compiled into bytecode format (a sort of programming language that’s written and understood by computers) by a compiler, such as the one built into Adobe Flash CS3 Professional. The bytecode is embedded in SWF files, which are executed by the Flash Player, the run-time environment.
ActionScript 3.0 offers a robust programming model that is familiar to developers with a basic knowledge of object-oriented programming. Some of the key features of ActionScript 3.0 include the following:
- A new ActionScript Virtual Machine, called AVM2, that uses a new bytecode instruction set and provides significant performance improvements
- A more modern compiler code base that adheres much more closely to the ECMAScript (ECMA 262) standard and performs deeper optimizations than previous versions of the compiler
- An expanded and improved application programming interface (API), with low-level control of objects and a true object-oriented model
- A core language based on the upcoming ECMAScript (ECMA-262) edition 4 draft language specification
- An XML API based on the ECMAScript for XML (E4X) specification (ECMA-357 edition 2). E4X is a language extension to ECMAScript that adds XML as a native data type of the language.
- An event model based on the Document Object Model (DOM) Level 3 Events Specification
Advantages of ActionScript 3.0
- It is designed to facilitate the creation of highly complex applications with large data sets and object-oriented, reusable code bases.
- While ActionScript 3.0 is not required for content that runs in Adobe Flash Player 9, it opens the door to performance improvements that are only available with the AVM2, the new virtual machine.
- ActionScript 3.0 code can execute up to ten times faster than legacy ActionScript code.