Plan du cours
Introduction
Semaine 1 : Introduction à Mobile Development
- Écosystème des applications mobiles et tendances
- Introduction au paysage des applications mobiles (iOS et Android)
- Différences entre les applications natives, hybrides et multiplateformes
- Vue d'ensemble du flux de travail et des outils de développement d'applications mobiles
- Développement natif ou multiplateforme
- Principales différences entre le développement d'applications pour une seule plateforme (natif) et pour plusieurs plateformes (multiplateforme)
- Avantages et inconvénients de chaque approche
- Aperçu des plateformes natives courantes (iOS, Android) et des outils multiplateformes (React Native, Flutter)
- Introduction au JavaScript Programming
- Syntaxe de base et structure de JavaScript
- Variables, constantes et types de données (nombre, chaîne, booléen, objet)
- Opérateurs et expressions
- Flux de contrôle :
if
,else
,switch
- Introduction aux fonctions et à la portée (portée globale vs locale)
- Configuration de Xcode pour le développement iOS
- Introduction à l'IDE Xcode : interface, outils et flux de travail
- Installation de Xcode et lancement du simulateur iOS
- Introduction au langage de programmation Swift
- Écrire une application Swift de base et l'exécuter sur le simulateur iOS.
- Configuration de Android Studio pour le développement Android
- Installation de Android Studio et configuration de l'environnement
- Configuration et utilisation de l'émulateur Android
- Introduction au langage de programmation Kotlin et à la syntaxe de base
- Écrire une application Kotlin de base et l'exécuter sur l'émulateur Android
- Configuration de l'environnement de développement natif React
- Installation des CLI Node.js et React natifs
- Introduction à Expo et création d'un projet avec Expo
- Exécution d'une application simple "Hello World" sur les émulateurs iOS et Android.
Semaine 2 : Principes de base iOS et Android
- Introduction à Swift et à l'IDE Xcode
- Variables et types de données dans Swift (Int, Float, String, Bool, etc.)
- Constantes avec
let
et variables avecvar
- Instructions de flux de contrôle
(if
,switch
, boucles) - Fonctions et paramètres dans Swift (en anglais)
- Gestion des erreurs dans Swift
- Conception de l'interface utilisateur dans iOS
- Introduction aux storyboards et à Xcode Interface Builder
- Concevoir des dispositions d'application en utilisant la disposition automatique et les contraintes
- Ajouter des composants d'interface utilisateur : boutons, étiquettes, champs de texte, images
- Gérer les interactions et les événements de l'utilisateur (par exemple, les clics sur les boutons)
- Création d'un formulaire de connexion simple et validation des données de l'utilisateur
- Introduction à l'IDE Kotlin et Android Studio
- Syntaxe de base de Kotlin (variables, types de données et fonctions)
- Comprendre la sécurité des nullités et les classes de données de Kotlin.
- Introduction à l'architecture et aux composants de l'application Android (Activities, Fragments)
- Gérer le cycle de vie des activités dans les applications Android
- Conception de l'interface utilisateur dans Android
- Concevoir des interfaces utilisateur Android en utilisant des fichiers de présentation XML.
- Travailler avec des gestionnaires de mise en page (LinearLayout, RelativeLayout, ConstraintLayout)
- Ajout de composants interactifs (boutons, vues de texte, textes d'édition)
- Utiliser Java/Kotlin pour gérer les entrées utilisateur et les transitions d'activité
- Construire un formulaire de connexion avec validation d'entrée
- Les bases du débogage dans Xcode et Android Studio
- Comment utiliser les points d'arrêt, les journaux et la console de débogage
- Outils et techniques de débogage courants pour iOS (Xcode Instruments, Simulator)
- Outils de débogage courants pour Android (Logcat, Android Debug Bridge)
- Tester et exécuter des applications sur des appareils réels
- Connecter des appareils physiques à Xcode et Android Studio
- Déployer des applications sur des appareils physiques (iPhones et téléphones Android)
- Simuler différentes conditions de réseau, niveaux de batterie et mesures de performance
Semaine 3 : Développement multiplateforme avec React Native
- Introduction à React Native et JavaScript for Mobile
- Qu'est-ce que React Native et pourquoi l'utiliser ?
- Aperçu de la façon dont React Native traduit JavaScript en code natif
- Syntaxe JSX : Écrire des structures de type HTML en JavaScript
- Composants React : Composants fonctionnels et composants basés sur des classes
- État et accessoires : Gérer le flux de données dans les composants React natifs
- Le style dans React Native
- Introduction à Flexbox et son importance dans la conception de la mise en page
- Création de mises en page réactives pour iOS et Android
- Appliquer un style spécifique à une plateforme en utilisant le module
Platform
de React Native
- React Navigation pour les applications multiplateformes
- Introduction à la React Navigation et aux conteneurs de navigation
- Création d'une navigation par pile pour les transitions d'écran
- Implémentation de la navigation par onglets et tiroirs pour les applications plus complexes
- Transmettre des données entre les écrans et gérer les états de navigation
- [Les fonctionnalités natives de l'appareil
- Utiliser les fonctionnalités de l'appareil telles que l'appareil photo et la localisation dans React Native
- Intégrer des API comme la géolocalisation, l'appareil photo et AsyncStorage
- Gestion des autorisations d'accès au matériel (différences entre iOS et Android)
- Stockage local des données avec AsyncStorage et intégration de bibliothèques tierces pour la persistance
- Préparer les applications pour le déploiement
- Configurer les paramètres de l'application pour la production dans Xcode et Android Studio
- Construire des APK pour Android et les tester sur des appareils réels
- Préparation de iOS applications pour la soumission à l'App Store (icônes d'application, certificats de signature)
- Finalisation de React projets natifs pour un déploiement en production sur les deux plateformes
- Présentation du projet final
- Présentation de l'application native multiplateforme React finale à la classe
- Recueillir les commentaires et discuter des améliorations potentielles
- Session finale de questions-réponses et remarques finales
Résumé et prochaines étapes
Pré requis
- Compréhension de base des concepts de programmation
Public
- Développeurs mobiles
- Programmeurs
Nos clients témoignent (5)
Edward est un facilitateur hors pair
Zibusiso Ncube - Agricatural Research Council
Formation - Ionic 4 and Angular for Developers
Traduction automatique
Mon moment préféré est la séance de questions-réponses avec Sir. Jose. Il est très compétent et connaît la réponse à nos questions.
John Henry - Toyota Motor Philippines
Formation - .NET MAUI (Intermediate)
Traduction automatique
Peut-être que plus d'exercices seraient mieux pour l'apprentissage, mais le temps était trop court.
Gianpiero Arico' - Urmet Spa
Formation - Embedded Linux Systems Architecture
Traduction automatique
Le savoir de Miguel sur le sujet était vaste. Il a rendu la formation facile à comprendre et le déroulement était équilibré ; ajoutant de nouvelles fonctionnalités à chaque section au fur et à mesure des besoins. Il a abordé tout ce qui avait été demandé et a répondu en détail à chacune des questions. C'était une expérience très agréable.
Paul Coaton - SEMPCheck Services
Formation - Flutter Development Bootcamp with Dart
Traduction automatique
Le formateur était enthousiaste, gentil et passionné par le sujet
Isaac Murphy - Royal New Zealand Airforce
Formation - Build Native iOS and Android Apps with Flutter
Traduction automatique