Développer des applications iOS, en autonomie grâce à une approche basée sur la pratique
Utiliser le langage Swift et les différentes API
Concevoir une interface graphique
Echanger des données avec un serveur
Gérer le fonctionnement hors ligne d'une application
Utiliser des librairies avancées (Localisation, Appareil Photo, Persistance)
Démontrer la qualité du code grâce aux tests unitaires et d'interface
Déployer une application sur l'App Store.
Modalités et moyens pédagogiques
Formation délivrée en présentiel ou distanciel* (e-learning, classe virtuelle, présentiel à distance).
Le formateur alterne entre méthode** démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation).
Variables suivant les formations, les moyens pédagogiques mis en oeuvre sont :
Ordinateurs Mac ou PC (sauf pour les cours de l'offre Management), connexion internet fibre, tableau blanc ou paperboard, vidéoprojecteur ou écran tactile interactif (pour le distanciel)
Environnements de formation installés sur les postes de travail ou en ligne
Supports de cours et exercices
En cas de formation intra sur site externe à M2i, le client s'assure et s'engage également à avoir toutes les ressources matérielles pédagogiques nécessaires (équipements informatique...) au bon déroulement de l'action de formation visée conformément aux prérequis indiqués dans le programme de formation communiqué.
* nous consulter pour la faisabilité en distanciel
** ratio variable selon le cours suivi
Niveau requis
Avoir suivi la formation SW-IN "Swift - Approche théorique pour les développeurs objet" ou avoir la connaissance pratique d'un langage de programmation objet (PHP, Node.js, Ruby, Java, C++, C#).
Public concerné
Développeurs, architectes et chefs de projets techniques.
Programme
Introduction à iOS et Xcode
Historique et environnement de développement
Prise en main de Xcode
Suivi des versions avec Git
Gestion des dépendances avec CocoaPods
Interface utilisateur
Vues et contrôles
Adaptation aux tailles d'écran avec Auto Layout
Storyboard
Listes
TableView
CollectionView
Ressources images et polices
Animation
Langage Swift
Variables et constantes
Types de données et optionnels
Les fonctions
Programmation Orientée Objet (POO) en Swift
Architecture et Design Patterns courants
Echanges serveurs
Communication avec une API REST
URLSession et Alamofire
Construction d'une requête
Validation des données et gestion des erreurs
Envoi / téléchargement de fichiers
Géolocalisation
Récupération de la position GPS (Core Location)
Gestion des permissions
Cartographie (MapKit) et annotations
Persistance de données
Base de données locale (CoreData)
Accès, écriture et migration de la base de données
Stockage local de fichiers
Préférences locales (NSUserDefaults)
Trousseau d'accès pour les données sensibles (Keychain)
Qualité logicielle
Bonnes pratiques
Tests
Unitaires (XCTest)
D'interface (XCUITest)
Intégration et déploiement continu
Publication
Signature d'une application
Déploiement public sur l'App Store
Déploiement privé entreprise
Contraintes de validation
Outils d'aide au déploiement
Exemples de travaux pratiques (à titre indicatif)
Développement fil rouge d'une application de partage de vélos (données temps réel)
Base de code source réutilisable pour encourager l'autonomie par la pratique
Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.
Modalités d’évaluation des acquis
En cours de formation, par des études de cas ou des travaux pratiques
Et, en fin de formation, par un questionnaire d'auto-évaluation
M2i, leader de la formation IT, Digital et Management depuis plus de 30 ans, propose plus de 2 500 cursus disponibles en présentiel partout en France, et à distance ou en e-Learning.