DM35EN03 · Automne

Développement mobile pour Android

Android OS, Kotlin, Android Studio et développement assisté par IA agentique. Partez d’un projet vide pour arriver à une application prête pour le Play Store.

présentation

Technologies principales : Android Studio, Kotlin, Jetpack Compose, outils de codage par IA agentique, GitHub Actions

Objectif du cours : Développer une application prête à être publiée

Ce cours est construit autour d’un objectif pratique unique : chaque étudiant développe une application Android complète, prête à être publiée, en suivant le même chemin qu’un développeur indépendant ou une petite équipe pour livrer un produit.

La façon de construire des applications a changé. Les outils de codage par IA générative écrivent aujourd’hui une grande part du code, et les workflows d’intégration continue (CI) le compilent, le testent et le packagent. Ce cours est enseigné à partir de cette réalité. Nous utilisons les outils d’IA agentique comme accélérateur dès le premier jour, ce qui libère du temps de cours pour ce que les outils ne font pas à votre place : comprendre comment une application mobile est assemblée, prendre de bonnes décisions d’architecture, relire et vérifier le code généré, et mener un vrai produit jusqu’à la ligne d’arrivée.

Nous travaillons toujours en Kotlin et consacrons du temps au langage, mais avec moins d’exercices de syntaxe et davantage de lecture, de structuration et d’évaluation du code. L’accent est mis sur Android Studio, l’architecture d’une application Android moderne et les réalités techniques de l’écosystème Android.

Ce que vous allez construire et apprendre

Chaque étudiant construit sa propre application, en implémentant des fonctionnalités réelles qui exigent une compréhension concrète de la plateforme :

  • Architecture d’application : comment une application Android moderne est structurée en couches UI, données, navigation et état, et pourquoi.
  • Intégration matérielle : interagir avec les périphériques de l’appareil, comme la caméra.
  • Données et connectivité : consommer des API externes et gérer le stockage local persistant avec une base de données (Room).
  • Engagement utilisateur : les notifications système et le cycle de vie de l’application, du lancement à la terminaison.
  • Développement assisté par IA : piloter efficacement les outils de codage agentiques, relire ce qu’ils produisent et garder la maîtrise de la conception.
  • CI et ingénierie de release : builds et tests automatisés avec GitHub Actions, et production d’un bundle de release.
  • Publication : la Play Console de bout en bout, de la fiche du store, des captures d’écran, de la politique de confidentialité et de la classification du contenu jusqu’aux pistes de test et à la revue.

Évaluation

La note combine un projet final et un examen final. Le projet est une application prête à être publiée : un build de release, un pipeline CI et une fiche de store complète, présentés lors d’une démonstration en direct. L’examen porte sur les concepts qui sous-tendent ce travail.

Une précision sur la Play Console : Google facture des frais d’inscription uniques (actuellement 25 USD) pour ouvrir un compte développeur. L’inscription n’est pas obligatoire pour le cours. Chaque étape jusqu’à l’envoi final, y compris le fonctionnement de la signature des applications, est montrée en cours, et le projet est noté sans compte. Les étudiants qui choisissent de s’inscrire peuvent publier pour de vrai.

labs

Démos interactives, projets d’exemple et modèles — depuis l’organisation GitHub du cours.

ressources