Formation iOS Swift
Le développement iOS avec Swift est le processus de création d'applications pour les appareils mobiles Apple tels que l'iPhone et l'iPad en utilisant le langage de programmation Swift. Swift est un langage de programmation open source créé par Apple qui a été conçu pour être facile à apprendre et à utiliser, tout en offrant des performances élevées et une sécurité accrue. Le développement iOS avec Swift implique de concevoir et de développer des interfaces utilisateur attrayantes et intuitives en utilisant les outils de développement fournis par Apple, tels que Xcode et Interface Builder. Il peut également inclure l'utilisation de frameworks et de bibliothèques tierces pour ajouter des fonctionnalités supplémentaires à l'application. Le développement iOS avec Swift est un domaine en constante évolution et de nouvelles technologies et outils sont constamment mis au point pour améliorer le processus de développement. En utilisant ces technologies et outils, les développeurs peuvent créer des applications iOS de qualité supérieure qui répondent aux besoins et aux exigences des utilisateurs.
Objectifs pédagogiques
- Appréhender l'écosystème iOS
- Comprendre les bases de Swift
- Connaître les bonnes pratiques du développement iOS
- Découvrir les principaux frameworks iOS
Pré-requis
- Maîtrise d'un langage de développement
- Connaissance de l'anglais appliqué à la programmation
Public
- Développeurs
- Chefs de projets
Programme
Jour 1
Initiation
- Swift, langage open source
- L‘écosystème iOS et les outils de développement Xcode, Repl et Playground.
- La documentation Swift et iOS.
- Création d’une première application, "Hello World".
Les bases de Swift:
- Constantes et variables
- Les types de base: String, Bool, Int, Double.
- Les Optionnels
- Les instructions conditionnelle
- Les boucles
- Les Fonctions
- Les Collections
Jour 2
Les spécificités de Swift
- Les structures de données: structs, enums et classes. Comprendre leurs similarités et différences, leurs usages.
- Les computed properties
- La programmation par protocole
- Les Génériques
- La programmation fonctionnelle avec les fonctions de “higher order” La gestion d’erreur avec do, try, catch
Jour 3
Programmation des écrans avec SwiftUI
- Les bonnes pratiques de création avec les Human Interface Guidelines
- Création d’une maquette avec Keynote et SF Symbols
- Les composants d’interface et les contrôles
- Création des vues avec les stacks
- Visualisation avec le preview provider et le simulateur
- La notion d’état, les property wrappers et les Bindings, les interactions utilisateurs
- Communication des données entre écrans
- Bonnes pratiques: l’extraction de vues, création de composants, les styles
Jour 4
La Navigation, les données
- Création de listes statiques et dynamiques
- Les formulaires
- Les différent types de navigation: hierarchical and horizontal.
- Les composants Navigation View et Tab View
- Les vues modales
- Modélisation des données et architecture, le protocole ObservableObject
- Partage des données avec @EnvironmentObject
Jour 5
Networking, stratégies de persistence
- La cartographie et la géolocalisation GPS
- Les appels réseaux sur une API web, l’asynchronisme
- Traitement des données mobiles JSON, le protocole Codable
- Les stratégies de persistence, @AppStorage, Core Data
- Le débuggage, l'app profiling avec les jauges et Instruments.
- Publication App store, Test Flight.
Méthodes mobilisées
- Un formateur validé par nos équipes techniques et pédagogiques sera présent pendant toute la durée de la formation
- Pour les formations en présentiel, une salle de formation sera mise à disposition et équipée d'ordinateurs portables, d'un accès Wi-Fi, d'un projecteur et d'un tableau blanc. En distanciel la session sera suivie sur Zoom ou autre outil de visioconférence sur demande (Teams, Webex, Google Meet...).
- Un support de cours en version numérique sera remis à chaque participant
Modalités d’évaluation
- Questions orales ou écrites (QCM)
- Exercices pratiques
- Auto-positionnement en amont et aval de la formation