Configuration et démarrage

App Inventor : Introduction



App Inventor est un environnement et un langage de programmation (gratuit et libre d'accès) pour réaliser des applications mobiles pour tablettes ou portables sous Android (et IOS dans le courant du 2° trimestre 2018).
Il est très facile d'accès (à partir de ~11 ans) avec une méthode de programmation graphique par blocs (blockly) qui évite les erreurs de syntaxe. Il exploite l'ensemble des ressources du téléphone (capteurs, moyens de communication, ...) et il est ouvert sur le monde avec l'accès au réseau et services Web, dont les bases de données.
Comme Scratch, App Inventor a été développé par le MIT dans la ligne des travaux de Seymour Papert (qui a travaillé avec Jean Piaget). Hal Abelson, créateur d'App Inventor a été lui même l'élève de Seymour Papert.

Cette vidéo illustre la réalisation d'une application en quelques minutes. Elle exploite la caméra comme un capteur/scanner de code barre, et un service Web pour trouver la référence d'un livre. Le guide pour la coder vous même est un des premiers tutoriels.

App Inventor permet de réaliser des projets beaucoup plus élaborés, certains sur le playstore ont été téléchargés plus de 500 000 fois.
La richesse des composants (capteurs, serveurs web, media, ...) permet de construire des applications riches et complexes, par exemple de type Uber ou de suivi d'une flotte de livreurs dans une base de données centrale (Ces applications seront examinées à la fin de ce cycle).

Si vous êtes débutants ou si vous n'avez jamais utilisé Scratch et la programmation par blocs (blockly), nous vous suggérons un passage de 30 mn par hour of code ou code.org Vous y trouverez une initiation amusante et efficace.
Nous vous le recommandons également si vous êtes animateur ou enseignant,car vous y trouverez un excellent support pédagogique sur les structures de base en programmation.

Principes d'App Inventor

Le mieux pour comprendre App Inventor, c'est de s'en servir.
Mentionnons seulement ici qu'App Inventor est une ressource Web, utilisée depuis un navigateur. La réalisation d'un programme se fait en deux parties :

  • La création de l'interface utilisateur et le choix des ressources qui seront utilisées dans l'application,
  • puis la programmation par blocs qui utilise les composants (évènements, propriétés, procédures) associées aux composants définis dans la première partie.
La programmation est évènementielle. L'application étant définie par son comportement en réaction aux évènements qui la concernent : des scripts ou séquences de blocs qui commencent tous par un évènement.
Elle intègre des fonctions simples mais également des procédures asynchrones qui permettent de faire appel à des services en réseau (navigateur, serveur de carte, serveur de traduction, reconnaissance vocale, ...), comme aux ressources applicatives et matérielles du téléphone (caméra, geolocalisation GPS ou Wifi, accéléromètre, ...)
La variété de ces ressources et la simplicité d'accès permettent une créativité illimitée.

Pendant la phase de développement (en mode connecté) le smartphone utilisé reflète en continu l'état du programme. L'utilisateur peut donc vérifier immadiatement l'impct des chnqgelmenst qu'il apporte au programme.
Puis lorsque le programme est terminé, il peut être téléchargé sur le smartphone (mode build ou construire) pour une utilisation autonome.

Enfin, les 6 millions d'utilisateursd'appInventor peuvent prtager leurs projets dans une galerieq