Why Use ActionScript 3.0 in Flash Based eLearning Development?
Adobe Flash Professional is undoubtedly the most popular tool for custom eLearning development. With the help of its inbuilt programming language ActionScript developers can code interactions, communicate with servers, program animations etc. The latest version of ActionScript- ActionScript 3.0 [AS 3.0] was released in 2006. It has many new APIs and better performance which were not available in the previous versions of ActionScript [AS 1.0 & AS 2.0] and is well backed by a great Flash developer community that has contributed in developing many open source frameworks/classes/APIs.
Here are some of the advantages of using AS 3.0 over AS 1.0 or AS 2.0 –
- Organized code – it has better object-oriented structure which includes things like runtime typing, sealed classes, packages, namespaces, and an improved event model.
- Easier troubleshooting and debugging – AS 3.0 has strict error checking which means less chances for bugs and errors. Tools like Flash/Flex Builder built over Eclipse platform provide advance debugging features by adding breakpoints, step-in, step-over and other such features. Flash Builder 4 will have better integration with Flash Professional which will make things easier for developers.
- New APIs and Frameworks – Adobe has developed many new capabilities in Flash Player, AS 3.0 can take advantage of all these new capabilities using the new APIs and Frameworks. Here are some of them –
- Sound APIs – AS 3.0 has improved sound APIs which can now tell the sound level of the audio playing in Flash Player. This can be used to control the lip movements of an on screen character by finding out the sound-level. The sound API also has the capability to generate sound dynamically.
- 3D support – with this the developers can reposition, rotate, and transform 2D Flash objects in 3D space. This can help in creating some really cool animations and effects which were not possible in previous versions.
- Better XML rendering – XML parsing is a hassle with AS 1.0 and AS 2.0 as we have to access the XML using its native methods like firstChild, childNodes etc. AS 3.0 has full implementation of ECMAScript for XML (E4X). With the help of this new API developers can now access the nodes within the XML objects by referring the name of the nodes with simple dot notation in XML hierarchy. It also has some new features for searching the value of attributes and nodes.
- Text layout framework – it’s a framework built on new text engine in Flash player 10 which can be used with AS 3.0. It supports bidirectional, vertical text which helps working with most of the popular languages used in world. It also supports multi column text, inline images etc.
There are a few more classes/frameworks developed like Squiggly – a spell check engine, OSMF [Open Source Media Framework] – a video media player for Flash and AIR which work with AS 3.0.
- Backward compatibility – AS 3.0 can load and play the files developed in AS 1.0 and AS 2.0 with very few constraints (find them documented here). This would allow AS 1.0 or AS 2.0 files created using rapid eLearning tools [like Raptivity etc.] to play within AS 3.0 player which is not the case otherwise.
- Open source classes and frameworks – the real strength using AS 3.0 comes from using open source libraries/classes which help developers not reinvent the wheel. Some of these libraries/classes are even backed by Adobe. Using the libraries like Papervision and Tweener we can create complex 3D interactions which are not possible in AS 2.0. There are also a few Social media libraries/classes.
- Access to byte level data – with AS 3.0 developers have access to the binary data, allowing them to render any file format in Flash Player. So file formats like wav , bmp [image format], and animated gif [image format] can now be rendered and displayed/played in Flash Player which was not possible with earlier versions. There are many free AS 3.0 libraries available to achieve all this. The eLearning developers can make use of these libraries to load common audio [wav] and image [bmp] formats.
- Desktop publishing – Adobe AIR which allows developing cross platform applications for desktop, uses AS 3.0 as one of its programming language. The eLearning applications developed in AIR enable learner to take the courses offline and publish the various updates like scores or completion status when they are online again.
- Performance – The part of Flash player that renders AS 3.0 content has been written from scratch to provide better performance resulting in AS 3.0 code to runs 10 times faster than its predecessors. This means the content runs much smoother with AS 3.0.
- Multiplatform support – we have earlier mentioned in one of our posts about the open screen project in which Adobe is working with various computer, mobile and TV vendors to deliver singular experience across multiple devices using Flash and AIR. AS 3.0 is going to be the standard language for all this development.
One issue you may face while developing the content in AS 3.0 is that some of the popular rapid eLearning tools [like Articualte, Content Point, Quarbon’s Viewlet Builder6] support AS 1.0 or AS 2.0 only, and can’t play the files developed using AS 3.0. So while developing the stand alone AS 3.0 Flash files make sure that it’s targeted eLearning content player supports that. Another issue could be the steep learning curve for AS 3.0 as it is completely different from AS 1.0 or AS 2.0.
Do share any other reasons you may have for using AS 3.0 in eLearning development.