Au Niger comme dans toute l’Afrique de l’Ouest, le smartphone est devenu le principal accès au numérique : paiement par Mobile Money, information, services administratifs, commerce. Ce cours initie les étudiants de Licence GELO au développement d’applications mobiles. Après un panorama des écosystèmes Android et iOS et des approches de développement, il se concentre sur React Native avec Expo, qui prolonge directement les compétences JavaScript et React acquises en développement web frontend et produit, avec un seul code, des applications Android et iOS. Une attention particulière est portée aux réalités locales : téléphones d’entrée de gamme, réseau intermittent (conception offline-first), sobriété en données et accessibilité. Chaque programme de corrigé a été exécuté dans un environnement de test (React Native Web) pour en garantir le fonctionnement.
Objectifs d’apprentissage
- Comprendre les architectures et les écosystèmes des plateformes mobiles Android et iOS.
- Développer des applications mobiles simples avec React Native ou Flutter (cross-platform).
- Concevoir des interfaces utilisateur mobiles : UX mobile, navigation, composants natifs.
- Intégrer des API REST dans une application mobile : fetch, gestion des états de chargement.
Prérequis
Développement Web Frontend HTML/CSS/JS (DWF3121) — GELO S3 ; Programmation Orientée Objet (POO4131). Il faut maîtriser JavaScript ES6+ (fonctions fléchées, déstructuration, Promises, async/await) et les bases de React (composants, état).
Plan du cours
- Leçon 1 — Écosystème Mobile
- Leçon 2 — React Native : Fondamentaux
- Leçon 3 — État et APIs dans les Applications Mobiles
- Leçon 4 — Projet et Déploiement
Travaux pratiques
- Exercices corrigés dans chaque leçon : lecture de Manifest, navigation Stack et Tab, grille adaptative, cache hors ligne, compte à rebours, panier persistant, géolocalisation.
- TP projet (leçon 4) : développement d’une application mobile utilitaire de référence — « Météo Niger » (variantes possibles : calculatrice, actualités Niger).
Modalités d’évaluation
Volume horaire : CM 12 h, TD 6 h, TP 12 h, travail personnel (TPE) 30 h, soit 60 h de charge totale (CTT) — 3 crédits. Évaluation : contrôle continu (CC, 40 %) + examen terminal (ET, 60 %) ; nature mixte (écrit et pratique). Le contrôle continu repose sur les TP et le projet d’application ; le quiz en ligne sert à l’auto-évaluation.
Bibliographie
- Bonnie Eisenman, Learning React Native, O’Reilly.
- Documentation officielle React Native (reactnative.dev — gratuit).
- Documentation Expo (docs.expo.dev) et React Navigation (reactnavigation.org).
- Google, Material Design 3 (m3.material.io) ; Apple, Human Interface Guidelines.
