
Description :
Maîtrisez le développement d'applications mobiles natives pour l'écosystème Apple iOS. Apprenez à utiliser Swift et SwiftUI pour créer des interfaces modernes, intuitives et conformes aux directives de design d'Apple. Découvrez comment implémenter les fonctionnalités iOS essentielles : notifications, géolocalisation, stockage de données et intégration avec les services Apple. Développez les compétences nécessaires pour publier votre application sur l'App Store et la maintenir efficacement.
Public
- - Développeurs Swift
- Étudiants en programmation
- Développeurs souhaitant travailler sur iOS
Nos formations sont accessibles aux personnes en situation de handicap. Chaque situation étant unique, nous vous demandons de préciser l’adaptation nécessaire à l’inscription.
Objectifs de formation
- - Concevoir une application avec une interface utilisateur intuitive
- Utiliser les frameworks iOS natifs
- Gérer les données et les APIs
- Publier une application sur l’App Store
Prérequis
- - Connaissance du langage Swift
- Familiarité avec Xcode
Programme de formation
Développement iOS : Créez des applications Apple rentables et professionnelles
Avant de démarrer son application iOS en Swift
- Le marché en chiffres
iOS dernière version, quoi de neuf ?
Les spécificités techniques du matériel
Différences entre les équipements Apple (iPad ,iPhone, Apple Watch, Apple TV)
Comprendre le fonctionnement de iOS pour mieux développer (priorité des process, background, consommation électrique, etc.)
Swift vs Objective-C la synthèse
Vue d’ensemble du modèle prévu par Apple.
Les différentes modalités de distribution (AppStore, ...)
Le programme de développement Apple
Environnement et outils de développement
- Matériel et configuration Mac nécessaire
Rôles de Xcode et Interface Builder
Les outils de mesure des performances (Instruments)
L'intégration continue (tests unitaires, etc.)
Documentations et ressources techniques
Architecture d'une application Swift
Vue d'ensemble des design patterns fondamentaux
Design pattern : Model View Controller (MVC)
Design pattern : Delegate
Design pattern : Protocol
Design pattern : Observer
Structure d'un projet Xcode
Swift, vue d'ensemble
Cohabitation avec Objective-C
Les constantes et variables
Opérateurs, instructions de contrôle, fonctions, boucles
Classes et interfaces
Tuples, Closures, Enumerations
Gestion des erreurs
Conseils de nommage
Grandes différences entre SwiftUI et Interface Builder
Exemple de création de vues
Un petit mot sur la gestion des états et des données partagées
Comment gérer les listes en Swift UI ?
Gestures avec SwiftUI
Manipulation et stockage des données
- Gestion de la mémoire
Ressources du projet (textes, images, sons, vidéos…)
Manipulation de fichiers
Introduction à CoreData (SQLite)
Stockage au format JSON et PLIST
NSKeyedArchiver/ NSKeyedUnarchiver, protocol Codable en Swift
Interface utilisateur avec UIKit
- Design avec storyboard et segue
La classe UIView
Répondre à des évènements avec UIResponder et le mécanisme Target-Action
Interface simple avec UIButton, UIImage, UILabel et UITextField
Message bloquant avec UIAlertController
Enchaînement des écrans avec UITabBar, UINavigationBar et UIStoryboardSegue
Liste de données avec UITableView
Animation des UIViews
Expérience Utilisateur enrichie avec UIGestureRecognizer
Géolocalisation
- Recommandations générales sur la gestion de la géolocalisation dans les applications mobiles
Présentation du framework CoreLocation
Paramètrer le fichier info.plist pour les autorisations de l’utilisateur
Lancer et stopper la géolocalisation
Utiliser le GeoCoding
Lancer la map à partir des coordonnées géodésiques
Applications connectées et Web Services en Swift
- Introduction au réseau et iOS
Push notifications et protocoles disponibles sous iOS
Architecture GCD et asynchronisme (threading)
Flux JSON, le format
Bonnes pratiques pour accéder au réseau
Le non blocage du thread UI (main thread) avec GCD
Mise en oeuvre, les différentes apis utilisables
Eviter les références cycliques dans les closures d’appels
Contraintes imposées par Apple
Gestion des Web Services en JSON
-
01 85 09 29 06
contact@oxformation.com
-