Accueil > Formations > Développement et Ingénierie de Logiciels > Développement Mobile & Cross-Platform > Développeur Android
Développeur Android
Maîtrisez le duo Kotlin et Jetpack Compose pour concevoir des applications Android modernes, réactives et maintenables !
Vue d'ensemble
Bases solides en programmation.
Objectifs pédagogiques
Programme détaillé
Android Studio et outillage
– Environnement de développement : prise en main d’Android Studio et du système de build Gradle
– Confort de travail : personnalisation de l’IDE et optimisation des paramètres pour gagner en productivité
– Assistance IA : intégration de Gemini dans l’environnement de développement
– Structure projet : organisation et architecture d’un projet Android Compose
– Débogage et performance : lecture de StackTrace, utilisation du debugger et du profiler
– Exécution : déploiement sur émulateur, terminal mobile ou tablette
– Gestion des dépendances : configuration de Gradle et intégration de bibliothèques tierces
– Livraison : génération d’un fichier exécutable (APK/AAB)
Langage Kotlin
– Fondamentaux du langage : variables, fonctions, classes et objets
– Programmation fonctionnelle : maîtrise des expressions lambda indispensables à Compose
– Communication réseau : consommation d’API REST avec le client Ktor
– Sécurité des données sensibles : protection et gestion des clés d’API
– Programmation asynchrone : gestion des tâches concurrentes avec les coroutines et Flow
Développement d’une première application avec lancement sur émulateur et appareil physique, connexion à une API REST avec sécurisation des identifiants, mise en oeuvre d’un ViewModel intégrant traitement asynchrone, données observables et gestion des états d’erreur et de chargement
Interfaces graphiques avec Jetpack Compose
– Composants sur mesure : création d’éléments d’interface réutilisables pour l’ensemble des écrans
– Prévisualisation : affichage des différentes configurations d’un écran via le système de Preview
– Cycle de vie déclaratif : mécanismes de recomposition, gestion des états et observation des données
– Enrichissement visuel : mise en place d’animations et de transitions
– Partage de données : utilisation de variables partagées entre composants
– Design system : application de Material 3 pour une interface soignée et cohérente
– Accessibilité et portée internationale : support des thèmes clair et sombre, gestion de l’internationalisation
– Mise en page avancée : exploitation du Layout Provider
Conception d’un écran interactif avec barre de recherche, liste déroulante et animations, gestion visuelle des états de chargement et d’erreur, création de Previews pour chaque état d’écran via un ViewModel préconfiguré, basculement clair/sombre et français/anglais
Navigation, permissions et géolocalisation
– Routage déclaratif : navigation entre écrans avec Compose Navigation
– Structure d’application : mise en place d’un Scaffold avec barre de navigation
– Autorisations système : gestion du cycle de vie des permissions
– Services de localisation : récupération de la position de l’appareil
– Éléments d’interface : configuration d’icônes et de menus
Implémentation d’une navigation vers un écran de détail, construction d’une barre de navigation, récupération de la géolocalisation du terminal
Architecture et tests
– Gestion d’état : mise en place et configuration d’un ViewModel
– Patron de conception : structuration du code selon l’architecture MVVM
– Principes avancés : introduction aux concepts de la clean architecture
– Adaptation d’affichage : gestion de la rotation d’écran et persistance des données
– Vérification du code : rédaction de tests unitaires et fonctionnels
– Tests asynchrones : stratégies de test pour les traitements concurrents
– Simulation de dépendances : création de mocks pour isoler les composants
– Inversion de contrôle : injection de dépendances avec Koin
Structuration complète de l’architecture d’un projet, écriture et exécution de tests unitaires et fonctionnels
Permissions et localisation avancées
– Permissions dynamiques : fonctionnement et gestion du cycle de demande d’autorisations à l’exécution
– Localisation optimisée : récupération de la position en mode économie d’énergie
Implémentation complète du système de localisation de l’appareil avec gestion des permissions
Introduction à Kotlin Multiplatform (KMP)
– Contexte et principes : historique de la technologie et fonctionnement du partage de code
– Positionnement : analyse comparative avec les autres solutions multiplateformes (Flutter, React Native)
Adaptation d’un projet Android existant en projet multiplateforme, exécution sur Desktop et iOS
Modules complémentaires (selon le temps disponible)
– Interfaces XML : fonctionnement de l’ancien système de vues Android
– Navigation par Fragments : gestion de la navigation avec le système historique
– Services Firebase : authentification Google et base de données temps réel
– Services d’arrière-plan : création d’un service lancé au démarrage de l’appareil (Service + BroadcastReceiver)
– Notifications push : mise en place de notifications distantes
– Android Auto / Automotive : développement pour les plateformes embarquées
Prochaines sessions
Avis des participants
Financement
Cette formation est éligible aux financements OPCO et FNE-Formation. Nos équipes vous accompagnent dans le montage de votre dossier.
En savoir plus sur le financement
