Actionscript. Language de programmation utilisé pour le développement de jeux, d'applications web, de lecteurs vidéo et de sites web.
Il est maintenant possible de l'utiliser pour le développement pour les mobiles et les tablettes. Que ça soit pour la plate-forme Android, iOS ou pour la tablette Blackberry Playbook, un projet en actionscript peut être utilisé pour tous.
Une code pour les développer tous.
Cette présentation montrera la situation réel de l'actionscript dans l'éco-système du développement mobile actuel.
Ce qui sera couvert:
Quels sont les avantages et les désavantages de cette technologie?
Un exemple réel svp!
Mon équipe web peut-il développer mon application? Oui, mais... voici mes conseils.
2. Avertissement
• Mes opinions sont les miennes.
• Ils peuvent refléter ou non les opinions des
compagnies pour lesquels je travail avec.
• Je vous souhaite une bonne présentation!
3. Qui suis-je
• Votre présentateur pour cette session.
• Je me présente Martin Arvisais:
– Entrepreneur / Développeur / Formateur
– Conférencier
– Tripeux de Techno!
4. Qui suis-je
• Entrepreneur: Holonet Studio
– Développement Web / Mobile / Social
– Spécialisé en développement Actionscript
– B2B / R&D
– Jeux / Application
5. Qui suis-je
• Développeur
– Sur le WWW depuis plus de 15 ans
– Actionscripteur depuis plus de 12 ans
– Flexeur depuis plus de 8 ans
6. Qui suis-je
• Formateur
– Plus de 2800 heures de formation
– Cégep, Entreprise, Particulier
– Flash, AS2 et AS3, Flex, FMS,…
7. Assez parlé de moi!
• Qui êtes vous? À qui je parle?
– Des développeurs ? Des Designers?
– Qui a déjà ouvert Flash?
– Qui a déjà ouvert Flex?
– Qui fait du mobile?
8. Agenda
• Ce qui sera vu
– Actionscript et AIR pour Mobile
– Écosystème Mobile
– Développement
10. AS3
• Wikipedia:
– ActionScript est un langage de script, orienté objet et prototype,
basé sur ECMAScript (conforme à 100% avec la norme ECMA-
262, révision 3, depuis ActionScript 3.0). ECMAScript étant une
version standardisée de JavaScript, ActionScript et JavaScript
partagent une syntaxe semblable.
http://fr.wikipedia.org/wiki/Actionscript
• La version courante est la version 3 (juin 2006).
11. Actionscript et Mobile
« Moi je sais que l’Actionscript
c’est pour Flash,
et Flash il n’y a pas ça sur mon Iphone!
Donc, c’est impossible!!!!!! »
13. Adobe AIR
• Adobe Integrated Runtime (AIR)
• De la même manière que Java, AIR nécessite au préalable
l'installation d'un moteur d'exécution au sein duquel sera
exécutée l'application. Cela offre l'avantage conséquent
de n'avoir à écrire qu'un unique code pour toutes les
plates-formes supportées par AIR.
http://fr.wikipedia.org/wiki/Adobe_Integrated_Runtime
14. Adobe AIR
• Donc:
– AIR peut exécuter de l’actionscript
– Il est sur Microsoft Windows et sur MacOs
– Et le « player » est disponible sur Android et
sur la BlackBerry PlayBook
15. Et…
• Pour iOS?
– iPhone / iPod touch / iPad
– Le compilateur AIR compile l’Actionscript en
application compatible
16. API AIR
• Qu’est ce que AIR apporte de plus de ce
que je peux faire avec Flash?
– Base de données locale SQLite
– Gestion fichier (CRUD)
– Interaction avec le OS
17. API AIR
• Et les APIs spécifique au mobile
– Gestion Multitouche + Gesture
– Utilisation de la Camera et du micro
• « CameraRoll »
– GPS / Accéléromètre
– Orientation de l’écran
– Bouton Android
– Etc…
18. API Stage…
• StageVideo
– Couche pour la vidéo avec accélération matricielle
• StageWebView
– Inclure une page web (Webkit)
– Utile pour API Facebook
– Contenu dynamique Web
– Zone publicitaire
19. API Stage…
• Stage3D
– Nouveau moteur 3D [UnReal, Unity]
• StageText
– Champ texte natif
• Dictionnaire
• Clavier natif,
• Copier / Coller
• Sélection
20. API AIR
• C’est tout?
• Pas plus d’API
• Et si j’ai besoin d’une fonctionnalité
spécifique à Android ou iOS???
24. ANE - Exemple
• Voici quelques exemples:
– Lecteur NFC
• communication en champ proche
– APNs
• Apple Push Notification Service
– Gyroscope
25. ANE - Exemple
• Exemple personnel
– Une application Android/iOS
– Une même interface commune
– Pour Android, utilisation d’un service qui roule
en permanence, développé en Java et le SDK
de Android
– Base de données commune
26. ANE - Développement
• Un ANE peut inclure un ou plusieurs codes
natif de un ou plusieurs environnements
(ex: Android, iOS)
• Une application AIR peut contenir plus
d’un ANE
• L’utilisation des débuggeurs « Natifs » est
permis. (Ex: ADB/DDMS pour Android)
27. ANE - Développement
• Un ANE peut inclure un ou plusieurs code
natif de un ou plusieurs environnement
(ex: Android, iOS)
• Une application AIR peut contenir plus
d’un ANE
• L’utilisation des débuggeur « Natif » est
permis. (Ex: ADB/DDMS pour Android)
28. Environnement de développement
• Ok, en résumé
– Actionscript est pour le Flash Player et AIR
– AIR ajoute des fonctionnalités et je peux
moi-même m’en développer
– Mais avec quoi?
29. Environnement de développement
• 3 façons sont disponibles:
– Adobe Flash Professional
– Adobe Flash Builder (Eclipse plug-in)
– Note pad ! et compilateur open-source
31. Flash Builder ?!
• Adobe Flash Builder
– Un environnement de développement:
• Sans Timeline et outils de design
• Sur Eclipse
• Outils disponible
– SVN, ANT, etc…
33. Flash Builder / Flex
• Anciennement Adobe Flex Builder il a été
renommé pour couvrir la confusion…
• Mon opinion, ça aurait du être :
– Adobe Actionscript Builder
• Et Flex.. C’est quoi ça… encore…
34. Adobe Flex
• Flex est un framework open source
originalement développé par Adobe pour
créer des applications Flash et AIR.
• Le développement de projet Flex se fait en
Actionscript 3 et du MXML
• MXML est un langage dérivé du XML qui
décrit les interfaces de l’application
35. Adobe Flex
• Flex possède une multitude de composants
graphiques et utilitaires.
• Le style est géré via CSS
• Analogie
– MXML => HTML
– Actionscript => Javascript
– CSS => CSS
37. En gros!
• En résumé:
– Actionscript = Flash player et AIR
– Code AS avec
• Flash Pro
• Flash Builder
– Développement en :
• Pure AS3
• En utilisant le SDK Apache Flex
– Framework applicatif
38. Et le mobile…
• Pour une application Mobile il faut
compiler avec AIR
• Qui peut compiler pour AIR :
– Adobe Flash Pro
– Adobe Flash Builder
– Ligne de commande (ant, terminal, etc)
39. OK! Mais…
• … mais qu’est ce qui exécute AIR?
• Le AIR player!
41. Une seconde
• BlackBerry possède dès l’installation Adobe
AIR
– La nouvelle version, la 2, sortie hier, possède la
dernière version!
• Android 2.2 possède AIR et est
« upgradable ».
– Il est possible à la compilation
d’inclure le player dans l’application:
CaptiveRuntimeSupport.
42. Et iOS
• Pour iOS, à cause des restrictions imposées
par Apple, le player AIR est inclus
automatiquement au fichier *.ipa
44. Ce que je pense de…
• AS3/AIR vs Natif vs HTML5/Js
• Application mobile vs Site Mobile
45. Et moi…
• Mon équipe web peut-il développer mon
application?
– Oui, mais...
46. Développer Mobile
• voici mes conseils:
– L’ergonomie mobile n’est pas celle du web
– Un émulateur n’est pas la « vrai » réalité
• Faite l’achat des « devices » que vous allez
supporter.
– N’amenez pas vos mauvaises pratiques de
développement. Un mobile c’est pas
hyper puissant!
47. Développer Mobile
• voici mon dernier conseil:
– soyez présent à ma conférence de vendredi:
– Du développement web au mobile
– 8:30
48. Pour commencer
• Ressources
– http://extensionsforair.com/
– http://flex.org/
– http://www.adobe.com/
– Sur votre mobile: Tour de Flex
• http://flex.org/tour-de-mobile-flex/
49. Conclusion
• Le Future sera…
– Air sur les TV
– Ajout de Windows 8
– Un meilleur SDK de Flex par Apache
– Flash = Vidéo et Jeux
– De supers réalisations 3D avec Flash/AIR