Accueil > Code > Astro (Flash Player 10) : AS3, ECMA4

Astro (Flash Player 10) : AS3, ECMA4

Astro, le nom de code du prochain player Flash (le dixième), ne cesse de se découvrir. On en est désormais certains, l’AS3 restera en vigueur pour cette release. L’AS4 reste à l’horizon, mais lointain. En revanche, certains ajouts sont faits à la structure du langage pour se conformer au standard ECMA-232 Rev 4, et entre nous, ça dépote.

Les tableaux typés

1
2
3
4
5
// Crée un tableau où tous les éléments doivent être de type String
var typedArray:[String] = new [String]("Pomme", "Poire", "Banane");
 
// Alternative en variable anonyme :
["Pomme", "Poire", "Banane]:[String];

Les génériques typés

1
2
3
4
5
6
7
8
9
10
11
// Crée un objet générique avec trois propriétés typées
{x:100, y:150, z:50}:{x:Number, y:Number, z:Number};
 
// Défini un type d'objet générique type
Point3D = {x:Number, y:Number, z:Number};
 
// Et hop, on utilise ce type générique
var myPoint:Point3D = new Point3D();
myPoint.x = 100;
myPoint.y = 150;
myPoint.z = 50;

L’opérateur ‘like’

1
2
3
4
5
// Retourne vrai, car ces deux objets ont des propriétés communes (x, y), ainsi que d'autres points communs
trace(instanceOfSprite like instanceOfMovieClip);
 
// Retourne également vrai, même si les deux classes n'ont aucun parent commun !
trace(instanceOfSprite like instanceOfPoint);

Les types mixtes

1
2
3
4
5
6
7
// Définition d'un type acceptant à la foi les valeurs de types Number et String
type MixedType = (Number, String);
 
// Petit test :
var mt1:MixedType = "Pomme"; // Fonctionne correctement
var mt2:MixedType = 12; // Fonctionne également
var mt3:MixedType = {x: 12, y: 15}; // Erreur de compilation, ni Number ni String !

Espérons que tout ceci rentre dans le planning d’Adobe pour Astro, sans quoi il va falloir être très patient pour l’AS4… Allez, salut !

Categories: Code Tags: ,
  1. Pas encore de commentaire
  1. Pas encore de trackbacks