« Programmation ActionScript/Bases » : différence entre les versions

Un livre de Wikilivres.
Contenu supprimé Contenu ajouté
DannyS712 (discussion | contributions)
m <source> -> <syntaxhighlight> (phab:T237267)
 
Ligne 5 : Ligne 5 :
= HelloWorld =
= HelloWorld =
Afficher un bonjour à l'utilisateur :
Afficher un bonjour à l'utilisateur :
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
trace("Hello World"); // Affiche -> Hello World
trace("Hello World"); // Affiche -> Hello World
</syntaxhighlight>
</source>


= Le langage =
= Le langage =
Ligne 19 : Ligne 19 :


Note simple :
Note simple :
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
// ceci est une note simple
// ceci est une note simple
</syntaxhighlight>
</source>


Note continue :
Note continue :
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
/*
/*
ceci est une note continue
ceci est une note continue
sur plusieurs lignes
sur plusieurs lignes
*/
*/
</syntaxhighlight>
</source>


== Les types ==
== Les types ==
Ligne 62 : Ligne 62 :


'''string'''
'''string'''
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
var vTexte:String = "ceci est le texte";</source>
var vTexte:String = "ceci est le texte";</syntaxhighlight>


'''int'''
'''int'''
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
var vInt:int = 175;</source>
var vInt:int = 175;</syntaxhighlight>


'''uint'''
'''uint'''
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
var vUInt:uint = -100;</source>
var vUInt:uint = -100;</syntaxhighlight>


'''nombre'''
'''nombre'''
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
var vNumber:Number = -100.56;</source>
var vNumber:Number = -100.56;</syntaxhighlight>


'''objet'''
'''objet'''
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
var vObject:object = new string();</source>
var vObject:object = new string();</syntaxhighlight>


'''tableau'''
'''tableau'''
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
var vArray:Array = ["david", "marine", "luna"];</source>
var vArray:Array = ["david", "marine", "luna"];</syntaxhighlight>
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
var vArray:Array = new Array("david", "marine", "luna");</source>
var vArray:Array = new Array("david", "marine", "luna");</syntaxhighlight>


'''booléen'''
'''booléen'''
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
var vBoolean:Boolean = true;
var vBoolean:Boolean = true;
</syntaxhighlight>
</source>


== Les tableaux ==
== Les tableaux ==
Les tableau servent a stocker plusieurs valeurs dans un objet à tabulation.
Les tableau servent a stocker plusieurs valeurs dans un objet à tabulation.
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
var semaine = ["Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi","Dimanche"];
var semaine = ["Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi","Dimanche"];


Ligne 100 : Ligne 100 :
trace(semaine[0]); // le premier élément "Lundi" est à la position 0.
trace(semaine[0]); // le premier élément "Lundi" est à la position 0.
trace(semaine[4]); // "Vendredi"
trace(semaine[4]); // "Vendredi"
</syntaxhighlight>
</source>


== Les conditions ==
== Les conditions ==
=== if ... ===
=== if ... ===
Le test "si".
Le test "si".
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
if (chien=="vert")
if (chien=="vert")
{
{
trace("le chien est vert");
trace("le chien est vert");
}
}
</syntaxhighlight>
</source>


=== if ... else ... ===
=== if ... else ... ===
Le test "si" ... "sinon" ...
Le test "si" ... "sinon" ...
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
if (chien=="vert")
if (chien=="vert")
{
{
Ligne 125 : Ligne 125 :
trace("le chien n'est ni vert ni rouge");
trace("le chien n'est ni vert ni rouge");
}
}
</syntaxhighlight>
</source>


=== switch() ===
=== switch() ===
Le "switch", ou <i>"selon"</i> en français, exécute le cas correspondant à la valeur qu'on lui passe. Ici si chien est rouge, le selon regardera dans sa liste les cas. Il passera sur le cas "vert" mais ne l'exécutera pas. Ensuite il passera sur le cas rouge mais là, il l'exécutera. Si aucun cas ne correspond, il exécutera le défaut si il est présent dans le bloc du switch.
Le "switch", ou <i>"selon"</i> en français, exécute le cas correspondant à la valeur qu'on lui passe. Ici si chien est rouge, le selon regardera dans sa liste les cas. Il passera sur le cas "vert" mais ne l'exécutera pas. Ensuite il passera sur le cas rouge mais là, il l'exécutera. Si aucun cas ne correspond, il exécutera le défaut si il est présent dans le bloc du switch.
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
switch(chien)
switch(chien)
{
{
Ligne 142 : Ligne 142 :
break;
break;
}
}
</syntaxhighlight>
</source>


=== ?: ===
=== ?: ===
Une condition ternaire comprend le '''<test>''' ? '''<reponse si true>''' : '''<reponse si false>'''
Une condition ternaire comprend le '''<test>''' ? '''<reponse si true>''' : '''<reponse si false>'''
<source lang="actionscript">
<syntaxhighlight lang="actionscript">


trace("Le chien est " + (chien=="vert")?"vert":"d'une autre couleur");
trace("Le chien est " + (chien=="vert")?"vert":"d'une autre couleur");
Ligne 152 : Ligne 152 :
// cela va afficher si chien est rouge -> Le chien est d'une autre couleur
// cela va afficher si chien est rouge -> Le chien est d'une autre couleur


</syntaxhighlight>
</source>


== Les itérations ==
== Les itérations ==
===for()===
===for()===
La boucle "pour".
La boucle "pour".
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
for(var i:uint=0;i<10;i++)
for(var i:uint=0;i<10;i++)
{
{
trace("La valeur de i est "+i);
trace("La valeur de i est "+i);
}
}
</syntaxhighlight>
</source>


===for each()===
===for each()===
La boucle "pour chaque".
La boucle "pour chaque".
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
for each(var jour:String in semaine)
for each(var jour:String in semaine)
{
{
trace(jour);
trace(jour);
}
}
</syntaxhighlight>
</source>


===for (in)===
===for (in)===
La boucle "pour (dans)".
La boucle "pour (dans)".
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
for each (var laValeur:* in heure)
for each (var laValeur:* in heure)
{
{
contenant.appendText(laValeur+"\n");
contenant.appendText(laValeur+"\n");
}
}
</syntaxhighlight>
</source>


===while ()===
===while ()===
La boucle "tant que".
La boucle "tant que".
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
var compteur:uint = 1;
var compteur:uint = 1;
while(compteur<8)
while(compteur<8)
Ligne 192 : Ligne 192 :
compteur++;
compteur++;
}
}
</syntaxhighlight>
</source>


===do ... while ()===
===do ... while ()===
La boucle "faire ... tant que"
La boucle "faire ... tant que"
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
var count:uint = 5;
var count:uint = 5;
do
do
Ligne 205 : Ligne 205 :
while(count<5);
while(count<5);


</syntaxhighlight>
</source>


== Les fonctions ==
== Les fonctions ==
Une '''procédure''' est une fonction qui ne retourne pas de valeur.
Une '''procédure''' est une fonction qui ne retourne pas de valeur.
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
function creerEtoile():void
function creerEtoile():void
{
{
Ligne 218 : Ligne 218 :
}
}


</syntaxhighlight>
</source>
Une '''fonction''' quant à elle retourne une valeur
Une '''fonction''' quant à elle retourne une valeur
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
function retournerEtoile():Star
function retournerEtoile():Star
{
{
Ligne 229 : Ligne 229 :
return myStar ;
return myStar ;
}
}
</syntaxhighlight>
</source>


== Les classes ==
== Les classes ==
Une classe définit un objet qui comprend des variables et des fonctions. Par convention comme en Java, on met la première lettre de la classe en majuscule.
Une classe définit un objet qui comprend des variables et des fonctions. Par convention comme en Java, on met la première lettre de la classe en majuscule.
<source lang="actionscript">
<syntaxhighlight lang="actionscript">
class MaClasse
class MaClasse
{
{
Ligne 239 : Ligne 239 :
// methodes
// methodes
}
}
</syntaxhighlight>
</source>


*Les données sont les variables de la classe
*Les données sont les variables de la classe
Ligne 245 : Ligne 245 :
*Données et méthodes sont des propriétés de la classe
*Données et méthodes sont des propriétés de la classe


<source lang="actionscript">
<syntaxhighlight lang="actionscript">
class Animal
class Animal
{
{
Ligne 254 : Ligne 254 :
}
}
}
}
</syntaxhighlight>
</source>
=== La visibilité ===
=== La visibilité ===
La visibilité spécifie par qui une propriété peut être utilisée.
La visibilité spécifie par qui une propriété peut être utilisée.
Il en existe deux :
Il en existe deux :


<source lang="actionscript">
<syntaxhighlight lang="actionscript">
public class MaClasse
public class MaClasse
{
{
Ligne 268 : Ligne 268 :
private ...
private ...
}
}
</syntaxhighlight>
</source>


====public====
====public====

Version actuelle du 16 avril 2020 à 09:54

ActionScript
Bases
Bases
Sommaire
Modifier ce modèle

Installation[modifier | modifier le wikicode]

Le logiciel est payant mais une version gratuite de Flash Professional CC est disponible sur le site officiel.

HelloWorld[modifier | modifier le wikicode]

Afficher un bonjour à l'utilisateur :

trace("Hello World"); // Affiche -> Hello World

Le langage[modifier | modifier le wikicode]

Les commentaires[modifier | modifier le wikicode]

  • Les commentaires sont très importants en programmation.
  • Ils permettent de mettre des notes.
  • Mettre des notes aide le codeur :)

Il faut mettre // ... ou /* ... */


Note simple :

// ceci est une note simple

Note continue :

/*
   ceci est une note continue
   sur plusieurs lignes
*/

Les types[modifier | modifier le wikicode]

  • Les types sont les premiers objets en programmation, c'est ceux qu'on utilise avec les variables.


string
Le string est pour le type texte par exemple : "texte"
number
Le number est pour le type nombre par exemple : 56, 30.5
uint
Le int est pour le type nombre entier par exemple : -56, -10, 4, 100
int
Le uint est pour le type nombre entier positif par exemple : 4, 100
object
L'object est pour le type Object
array
L'array est pour le type tableau par exemple : [1,2,3,4]
boolean
Le boolean est pour le type booléen par exemple : true,false

Les variables[modifier | modifier le wikicode]

Une variable sert à stocker une valeur.

On la déclare de la façon suivante :

var nomDeVariable;


Une variable peut ête de différents types :

string

var vTexte:String = "ceci est le texte";

int

var vInt:int = 175;

uint

var vUInt:uint = -100;

nombre

var vNumber:Number = -100.56;

objet

var vObject:object = new string();

tableau

var vArray:Array = ["david", "marine", "luna"];
var vArray:Array = new Array("david", "marine", "luna");

booléen

var vBoolean:Boolean = true;

Les tableaux[modifier | modifier le wikicode]

Les tableau servent a stocker plusieurs valeurs dans un objet à tabulation.

var semaine = ["Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi","Dimanche"];

// on veut voir le contenu
trace(semaine[0]); // le premier élément "Lundi" est à la position 0.
trace(semaine[4]); // "Vendredi"

Les conditions[modifier | modifier le wikicode]

if ...[modifier | modifier le wikicode]

Le test "si".

if (chien=="vert")
{
    trace("le chien est vert");
}

if ... else ...[modifier | modifier le wikicode]

Le test "si" ... "sinon" ...

if (chien=="vert")
{
    trace("le chien est vert");
} else if (chien=="rouge")
{
    trace("le chien est rouge");
} else
{
    trace("le chien n'est ni vert ni rouge");
}

switch()[modifier | modifier le wikicode]

Le "switch", ou "selon" en français, exécute le cas correspondant à la valeur qu'on lui passe. Ici si chien est rouge, le selon regardera dans sa liste les cas. Il passera sur le cas "vert" mais ne l'exécutera pas. Ensuite il passera sur le cas rouge mais là, il l'exécutera. Si aucun cas ne correspond, il exécutera le défaut si il est présent dans le bloc du switch.

switch(chien)
{
    case "vert":
        trace ("Le chien est vert");
        break;
    case "rouge":
        trace ("Le chien est rouge");
        break;
    default:
        trace ("Le chien n'est ni vert ni rouge");
        break;
}

?:[modifier | modifier le wikicode]

Une condition ternaire comprend le <test> ? <reponse si true> : <reponse si false>

trace("Le chien est " + (chien=="vert")?"vert":"d'une autre couleur");

// cela va afficher si chien est rouge -> Le chien est d'une autre couleur

Les itérations[modifier | modifier le wikicode]

for()[modifier | modifier le wikicode]

La boucle "pour".

for(var i:uint=0;i<10;i++)
{
    trace("La valeur de i est "+i);
}

for each()[modifier | modifier le wikicode]

La boucle "pour chaque".

for each(var jour:String in semaine) 
{
   trace(jour);
}

for (in)[modifier | modifier le wikicode]

La boucle "pour (dans)".

for each (var laValeur:* in heure)
{
    contenant.appendText(laValeur+"\n");
}

while ()[modifier | modifier le wikicode]

La boucle "tant que".

var compteur:uint = 1;
while(compteur<8)
{
    trace("compteur="+compteur);
    // l'opérateur ++ permet d'incrémenter d'une valeur une variable numérique
    compteur++;
}

do ... while ()[modifier | modifier le wikicode]

La boucle "faire ... tant que"

var count:uint = 5;
do
{
    trace("count="+count);
    count++;
}
while(count<5);

Les fonctions[modifier | modifier le wikicode]

Une procédure est une fonction qui ne retourne pas de valeur.

function creerEtoile():void 
{
    myStar = new Star();
    myStar.x = 100;
    myStar.y = 150;
    addChild(myStar);
}

Une fonction quant à elle retourne une valeur

function retournerEtoile():Star
{
    myStar = new Star();
    myStar.x = 100;
    myStar.y = 150;

    return myStar ;
}

Les classes[modifier | modifier le wikicode]

Une classe définit un objet qui comprend des variables et des fonctions. Par convention comme en Java, on met la première lettre de la classe en majuscule.

class MaClasse
{
   // données
   // methodes
}
  • Les données sont les variables de la classe
  • Les méthodes sont les fonctions de la classe
  • Données et méthodes sont des propriétés de la classe
class Animal
{
   // données
   var poids = 15
   function Crier(){
     trace (" l'animal crie ");
   }
}

La visibilité[modifier | modifier le wikicode]

La visibilité spécifie par qui une propriété peut être utilisée. Il en existe deux :

public class MaClasse
{
   // données
   public var nomDeLaClasse = "MaClasse";
   // methode
   public ...
   private ...
}

public[modifier | modifier le wikicode]

Tout le monde peut la voir et l'utiliser

private[modifier | modifier le wikicode]

Est visible seulement dans la classe

Quelques ressources[modifier | modifier le wikicode]

Cours AS de developpez.net