TUTORIELS 
ActionScript 2.0 (1) : les nouveautés

Page 1 | 2

La nouvelle version de Flash apporte son lot de nouveautés, et l'évolution du langage ActionScript n'est pas la moindre d'entre elles. Tour d'horizon.
 (10 octobre 2003)
 
Discutez en sur les forums
Nouvelles règles d'écriture
On peut résumer ces règles rapidement : typage fort, déclaration de variables et sensibilité à la casse.

Le typage fort est l'apanage des langages OO tels que Java, et à lui seul promet une petite révolution dans la manière de programmer sous Flash. En effet, il signifie qu'une variable ne peut avoir qu'un seul type : entier, bouléen, chaîne... Toute tentative de mettre une donnée d'un type autre que celui déclaré dans la variable résultera immanquablement à une erreur. Il est aussi possible de typer ce que renvoi une fonction...
La déclaration de variables est elle aussi une contrainte par rapport à la méthode AS1.0 : là où on pouvait introduire au besoin une nouvelle variable en plein milieu d'une fonction, on doit maintenant la déclarer proprement avant son utilisation.
La sensibilité à la casse est, de ces trois nouvelles règles, la moins difficile à assimiler : le nombre de majuscules/minuscules dans le nom d'une variable ne doit pas changer dans ses différents appels.

Nouvelles règles d'écriture
ActionScript 1.0
ActionScript 2.0
var prenom = "Xavier";
var Prenom = "Hélène";
trace (prenom); // affiche "Hélène"
trace (Prenom); // affiche "Hélène"

function heure()
  {
  return Date().getHours;
  }

function multiplication(x, y)
  {
  return x*y;
  }
var prenom:String = "Xavier";
var Prenom:String = "Hélène";
trace (prenom); // affiche "Xavier"
trace (Prenom); // affiche "Hélène"

function heure():Date
  {
  return Date().getHours;
  }

function multiplication(x:Number, y:Number):Number
  {
  return x*y;
  }


Nouveaux éléments de langage
Ils sont apparus soit par demande des utilisateurs (comme Mouse.onMouseWheel()), soit pour améliorer le langage (comme la classe Error). Voici une petite sélection, en sachant qu'il y en d'autres...

Nouveaux éléments
Element
Description
Array.sort()
Array.sortOn()
Options de tri de tableau
LoadVars.addRequestHeaders()
XML.addRequestHeaders()
Personalisation des headers (type MIME, ...) des requêtes POST
Mouse.onMouseWheel()
TextField.mouseWheelEnabled()
Gestion de la roulette de la souris (Windows)
classes ContextMenu et ContextMenuItem Personalisation de menu contextuels (bouton droit)
classe Error Gestion des exceptions
classe MovieClipLoader Gestion du chargement des éléments externes
classes NetConnection et NetStream Gestion du flux vidéo local
classe PrintJob Gestion de l'impression
classe TextField.styleSheet Gestion des feuilles de styles CSS

Quasiment tous les objets ont reçu de nouvelles propriétés et méthodes...

Nouveau modèle de sécurité
Nous en avions parlé récemment, et il est important d'être au courant de cette nouveauté sans quoi certains sites ne fonctionneront plus mais afficheront un message d'alerte...
Pour aller vite, le Flash Player 7 requiert maintenant que se trouve à la racine du serveur un fichier XML indiquant quels sont les serveurs accessibles depuis l'animation en cours de lecture. Ce fichier est de cette forme :

<?xml version="1.0"?>
  <!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
  <cross-domain-policy>
    <allow-access-from domain="journaldunet.com" />
    <allow-access-from domain="www.journaldunet.com" />
    <allow-access-from domain="developpeurs.journaldunet.com" />
    <allow-access-from domain="www.grolapinrose.tk" />
  </cross-domain-policy>

Cela s'applique à tous les types de fichiers externes : texte, JPEG, MP3, SWF, ActionScript... Donc, à prendre impérativement en compte pour ses nouveaux sites, et à mettre impérativement en place pour les anciens !

JSFL
Nous n'aborderons pas ici cette technologie pour l'heure. Elle permet de personnaliser Flash à sa manière, et ainsi de potentiellement accélérer le temps de développement en regroupant, par exemple, dans une seule commande plusieurs actions. Utiliser en combinaison avec le nouvel Historique, elle permet de créer des petites macros rapidement, à la manière des actions Photoshop, mais aussi de revoir en partie ou intégralement l'interface, d'intégrer ses propres formes à la palette standard, de créer ses propres panneaux... Les aguerris de JavaScript (qui n'est pas éloigné d'ActionScript, rappelons-le) y trouveront une source de rajeunissement pour leur Flash.

Nous verrons la semaine prochaine ce qui a changé dans Flash, tant côté interface que côté ActionScript...

Page 1 | 2

 
[ Xavier BorderieJDNet]
 
Accueil | Haut de page