Easy-Micro

ESPACEMEMBRE ActionScript
Historique

Présentation du langage

ActionScript est le langage de programmation utilisé pour et avec le logiciel d'animations vectorielles Flash (Adobe/Macromédia).

Conforme avec la norme ECMA (European Computer Manufacturers Association), comme son grand frère JavaScript, ces deux langage de script partagent une syntaxe commune bien que, bien entendu, ActionScript utilise des objets spécifique à son environnement.

AS1 (ActionScript 1.0) est apparu avec la version 5 de Flash,
AS2 (ActionScript 2.0) avec la version MX 2004 (version 7) et
AS3 (ActionScript 3.0) avec la version CS3 de Flash (version 9 - Prix: 836 € TTC).

Les puristes peuvent aussi utiliser ActionScript3 sur l'architecture Flex (Premiers pas avec Flex)

Flash CS3
Photo d'écran d'Adobe Flash CS3 (soit version 9)

Depuis AS2, les scripts sont écrit, soit sur la première image clé du scénario, soit dans un fichier externe (de type texte) relié au fichier SWF par un include "monfichier.txt" ;

Vous pouvez aussi utiliser les raccourcis-clavier: Touche d'échappement (Esc) puis "d" et "m" affichera ainsi directement la fonction duplicateMovieClip().

Les commentaires en ActionScript sont identiques aux commentaires JavaScript : // et /* ... */

Pour réaliser un printr en AS3 (affichage du résultat), utilisez l'instruction :
trace(flash.utils.describeType(patali, patala));
Exemple XML: trace(flash.utils.describeType(personnes..email));

Projet Tamarin
Le projet Tamarin est la création d'une machine virtuelle pouvant exécuter des programmes écrits en JavaScript et ActionScript 3.x. La machine virtuelle Tamarin est intégrée dans Flash 9 (CS3) et Firefox 3.5.

La société Adobe, qui a racheté Macromédia1, le créateur de Flash, a libérée fin 2008 le code (135000 lignes) de sa machine virtuelle ECMAscript 4 sous licence Mozilla Public Licence. Cela en fait donc un produit open source, nommé Tamarin.

A quoi sert cette VM ?
ECMAscript est le langage sur lequel se base Actionscript (version 3, celle utilisée dans le flash player version 9). Le plus gros avantage que l'on pourrait tirer de cette machine virtuelle est son utilisation en Just In Time : au lieu de générer tout le langage machine lors de l'interpretation, la machine virtuelle ne "convertira" que les parties du code réellement utilisées lors de l'exécution du script, d'ou un gain de performance.

Source: le blog de Jean-Philippe Moal
1 - La société Macromedia Incorporated fut rachetée par Adobe Systems Incorporated le 18 avril 2005

ActionScript ActionScript 3.0
Le typage strict devient obligatoire en AS3.

• Le panneau "nouveau document" de Flash CS3 (depuis la Version 9) permet de créer trois types de documents différents. Un document en ActionScript 3 (AS 3.0), ou bien en ActionScript 2 (AS2.0) ou encore Flash Lite (pour Mobile). Attention, un projet AS3 ne pourra contenir que de l'AS3, contrairement aux projets AS2 qui pouvaient contenir de l'AS1.

• Le modèle événementiel ActionScript 3 introduit une nouvelle et unique syntaxe pour écouter tous types d'événements : DOM 3. L'écoute d'événement s'appuie sur l'API de la classe EventDispatcher via la méthode
addEventListener(Event.ENTER_FRAME,mafonction); qui remplace la méthode AS2 onEnterFrame = function().

• Attention, en AS3, toutes les propriétés perdent leurs underscores (soulignement inferieur). Par exemple, la propriété "_x" devient "x", mais les fonctions changent aussi de noms comme la fonction hitTest qui devient hitTestObject ou encore la fonction getURL() qui devient navigateToURL() etc...

• En ActionScript 1 et 2, une animation vierge comportait un seul super MovieClip conteneur désigné par la propriété globale _root. En ActionScript 3 la structure de base d'un fla a changée en 2 points principaux :
1/ Le conteneur principal n'est plus un MovieClip mais une instance de Stage (comme le mot anglais onstage).
2/ Votre animation est une instance de Sprite contenu dans Stage. La classe Sprite est une classe similaire à la classe MovieClip mais elle ne possède pas de timeline.

L'objet stage est un objet graphique qui contient lui-même un Sprite (votre animation). Quand à _root il a disparu sous sa forme globale pour laisser place à la propriété root qui designe la scène principale.

Voir un petit tableau pense bête sur les différences entre as2 et as3.

ActionScript Editeur de texte pour ActionScript3
FlashDevelop : Voir toute en bas de la page de téléchargement. FlashDevelop nécéssite un JRE qui est fournie dans le package de téléchargement (Java runtime environment: machine virtuel Java). FlashDevelop permet de créer des projets AS2/AS3, et donc de les compiler sous forme d'un SWF, sans passer par l'IDE Flash. Pour celà, il utilise le FlexSDK. Voir Minuit4.fr pour son utilisation.
Eclipse IDE : Eclipse est un environnement de développement polyvalent basé sur des plug-in.

INFO sur LE concurent
Depuis fin 2007, Microsoft propose le logiciel Expression Blend (qui fait parti de la suite d'outils graphique "Expression Studio" - concurent de la suite "Creative Suite" d'Adobe). Ce nouvel outil permet de créer des animations vectoriels au même titre que Flash. Pour lire des animations réalisées avec Expression Blend, votre navigateur devra télécharger le plug-in Microsoft SilverLight.

ActionScript Sites utiles
ActionScript Dictionary (VO)
Flash Mediabox (VF)
FAQ Flash (VF)
FlashDevelop (VO)
Bases-as3 (VF)
Pratique d'ActionScript3
Flash-france (VF)
Zone Flash (VF)
Actionscript.org (VO)
Wiki Mediabox (VF)
Syntaxe ActionScript (VF)


< Page précédente ACTIONSCRIPT Page suivante >