Développer des applications iOS en Swift
Cette formation permet d’acquérir les compétences fondamentales pour le développement d’applications iOS natives en Swift.
À propos de la formation
Cette formation, à destination des développeurs connaissant déjà la programmation, permet d’acquérir les compétences fondamentales pour le développement d’applications iOS natives sur iPhone et iPad en Swift. Vous y apprendrez le positionnement de l’écosystème iOS dans le paysage du développement mobile, les bases de la programmation en Swift, l’utilisation de l’environnement de développement Xcode, la création d’interfaces interactives, les fonctionnalités qui font la plus-value d’une app mobile (GPS, accéléromètre, notifications, réseau…) jusqu’au déploiement de l’app sur l’App Store.
Programme
Bases du langage Swift
- Les expressions, les variables et les constantes
- Les opérateurs
- Les types et les collections
- Les optionnels
- Les fonctions et les closures
- Les structures, les classes et les énumérations
- Les protocoles et le pattern delegate
Environnement de développement
- Introduction au développement mobile et à l’écosystème Apple
- Présentation de Xcode et de l'interface
- Les projets, les workspaces et les playgrounds
- Le débogguer, les breakpoints et Instruments
- Utiliser les simulateurs
- Les assets, les resources et les images
Applications et interfaces
- L’architecture d’une app
- Le cycle de vie d’une app et l’AppDelegate
- UIKit et le pattern Model-View-Controller
- Les différents composants et widgets
- Interface Builder, Storyboards et Segues
- Les principaux contrôleurs (Navigation, Tab, Table View...)
- Les différents types de présentation de vues (modale, popover...)
- Auto-Layout, contraintes, Safe Area et orientations
Réseau et persistance
- Le fonctionnement du réseau et les problématiques
- Utilisation de URLSession
- Sérialisation et désérialisation des données
- Introduction à Core Data et à la persistence des données
- Utilisation des UserDefaults
- Lecture et écriture de fichiers
- Introduction à libdispatch, au threading et aux queues
Notifications push
- Les notifications locales et distantes
- Gestion des autorisations
- Certificats et sécurité
Géolocalisation
- Core Location : GPS et géolocalisation
- Gestion des autorisations
Packages et dépendances
- Swift Package Manager
- Ajouter et gérer des packages
- Créer un package
- Architecture en micro modules
Publier une application
- Le portail développeur
- Gestions des certificats et des profiles
- Déployer des versions bêta avec TestFlight
- Livrer sur l’App Store avec App Store Connect
- Analytics et statistiques
Introduction à SwiftUI
- Présentation et avantages de SwiftUI
- Les vues et la composition de vues complexes
- Les principaux composants (texte, image, bouton, stacks...)
- Les modifiers
- Les états et le data flow
- Listes et navigation
Pré-requis
Développeur voulant acquérir des compétences dans le développement mobile iOS natif. Nécessite des connaissances en programmation orientée objet. Nécessite un Mac avec la dernière version de Xcode installée. Des connaissances en Swift sont un plus.
Durée de la formation
5 jours