Concepts de base
- Les lecteurs Flash. Flash player, AVM1 et AVM2.
- Présentation du sandBox et de sa sécurité. Désassembleur de code. Offuscation.
- Présentation du Framework de Flash.
- Environnements de développement ActionScript 3 sous Flash ou Flex, Flash Develop.
- Présentation de l'éditeur, débogage d'application sous Firebug.
- Paramétrage des options de compilations.
- Avantage de Flex pour développer rapidement des projets Actionscript3.
Travaux pratiques
Configuration de Flash. Premier projet. Rerouter les erreurs vers Firefox / Firebug.
Rappels sur les composants graphiques
- Rappel sur les formats graphiques (MovieClip, Button, Graphics).
- Démarche pour exporter des bibliothèques SWC ou SWF pour son intégration dans un projet AS3.
- Les formats multimédia (vidéo audio supportés).
- Intégration dans une page web et passage de paramètres.
- Rôle du Stage, DisplayObjects. Architecture graphique.
Travaux pratiques
Construction de bibliothèques SWC, SWF, classes spécifiques Flash pour intégration et appel dans un projet AS3.
Le langage Actionscript 3.0
- Variables. Typage. Conversions. Portée.
- Opérateurs logiques, arithmétiques.
- Création de package et de classes (héritage, portée, constructeurs).
- Array, dataprovider.
- Classes et objets : package, portée, héritage, surcharge,...
- Classes de données : Objets, Math, String.
- Les expressions régulières.
- Manipulation des dates et heures.
- Classe Error et gestion des exceptions.
Travaux pratiques
Prise en main et manipulation des formats date, String, Array d'Actionscript 3.0. Exceptions et gestion des erreurs.
Manipuler les données XML avec E4X
- Comprendre la structure du XML, CDATA, NameSpace, Qname. Validation XSD, XPath.
- Manipuler le XML en ActionScript 3.0.
- Les classes XML, XMLList, XMLDocument.
- Manipuler, filtrer, trier et itérer les objets de type XML.
- Chargement extérieur de données XML.
Travaux pratiques
Manipuler des données XML. Xpath. Chargement extérieur.
Evénements du DOM3
- Trois phases des événements.
- Déclarer des événements personnalisés.
- Classe Event. Les événements KeyBoard, Mouse.
- Les événements du gestionnaire graphique.
Travaux pratiques
Création d'événements avec passage d'arguments. Gestion du Drag Drop.
Composants graphiques
- Composants graphiques : MovieClip, Sprite, Shape.
- Composants TextField, SimpleButton, Label.
- Gestion de la barre de progression.
- Gestion des Bitmap, class Loader.
- Propriétés et événements.
- API de dessin.
- La détection de collision d'objet (hitTestObject).
Travaux pratiques
Création de composants dynamiquement et gestion de leurs propriétés. Chargement et traitement de bitmap.
Manipulation de données multimédia
- Traitement et mise en forme de contenu Texte.
- Les CSS.
- Traitement d'images Bitmap. Classes Bitmap et BitmapData.
- Manipulation, transformation d'objets Bitmap.
- Filtres personnalisés avec Pixel Bender.
- Traitement de données audio. Chargement. SoundLoaderContext, SoundChannel. Transformation de Fourier.
- Traitement de données vidéo. Classes Video, NetStream et Camera.
Styles
- Design des composants : thèmes, feuilles de style, fontes. Mask. Effets et transitions.
- Chargement de CSS.
- Personnalisation du curseur (objet Mouse).
- Gestion des couleurs (Objet Color).
- Effets graphique avec la classe Tween.
- Effets et Bitmaps : gestion pixels, Threshold, filtres de transformation.
Travaux pratiques
Chargement de CSS, changement des styles. Changement de curseur. Programmation de drag&Drop de composant graphique, création d'un masque.
Accès aux données
- Services loadURL. Loader.
- Shared Objects et les données.
- Appel de services web.
Travaux pratiques
Appel d'URL, création de ShareObject. Chargement dynamique d'image, de Flash, de vidéos, de sons.
AMF
- Présentation du protocole AMF.
- Echanges d'objets, modèle MVC.
- Présentation d'AMFPHP.
- Définition des services.
Travaux pratiques
Création d'un projet utilisant AMFPHP. Création d'application client, configuration et installation AMFPHP. Installation d'AMFPHP avec WampServer, création d'un service distant. Interrogation et échange de données.