App Inventor : Introduction
App Inventor est un environnement de développement (gratuit et libre d'accès) pour réaliser des applications mobiles pour tablettes ou portables :
- c'est un Environnement de Développement Intégré (IDE) avec tout le nécessaire pour concevoir, développer et tester des applications mobiles,
- il est facile à apprendre, avec un langage graphique qui évite les erreurs de syntaxe,
- il est rendu très puissant, par l'utilisation de l'ensemble des ressources du téléphone et du Web : capteurs, moyens de communication, internet, serveurs, open data, etc.
- il a été développé par Hal Abelson (MIT), dans le département de Seymour Papert.
- c'est une application "cloud" utilisée depuis votre navigateur Internet (ex :Chrome ou Firefox ).
- Il fonctionne pour android et IOS, (mais les transferts d'applications sur IOS sont compliqués)
Cette vidéo illustre en quelques minutes la réalisation d'une application qui utilise la caméra pour scanner le code barre d'un livre, puis un service Web pour trouver la référence et un résumé du livre. Le guide pour la coder vous même est un des premiers tutoriels.
La richesse des composants (capteurs, serveurs web, media, ...) permet de construire des applications complexes,
par exemple de type Uber ou de suivi d'une flotte de véhicules.
Certaines de ces applications ont été téléchargées plus de 500 000 fois.
Si vous êtes complètement débutant et n'avez jamais utilisé Scratch ni la programmation par blocs, nous vous suggérons 30 mn sur hour of code.
Principes d'App Inventor
Le mieux pour comprendre, c'est de s'en servir, donc passez rapidement aux premiers tuto vidéo.
App Inventor est une ressource Web. Le codage d'une application se fait, en deux étapes suivies par le transfert de l'application au smartphone :
- le design :
création de l'interface (boutons, images, ...) et choix des ressources nécessaires (capteurs, reconnaissance vocale, géolocalisation, ...) - la programmation : évènementielle et par blocs
Le programme est fait de scripts (ou séquences) correspondant aux séquences d'actions prises en réaction à un évènement : la programmation "évènementielle".
Ces blocs peuvent être des variables, des propriétés, des fonctions ou des évènements. Ils exploitent les ressources sélectionnées dans la phase de design. - Le transfert au smartphone de l'application selon 2 modes possibles :
- le mode "construire" : le programme est compilé et téléchargé sur le smartphone. Ca prend quelques dizaines de secondes.
- le mode "connecté" : Le smartphone reflète en permanence le programme en cours d'écriture. Ce mode est intéressant dans la phase de mise au point.