Formation Swift, développer des applications iOS pour développeur objet (iPhone/iPad)
5 JoursObjectifs de la formation iOS Swift Développeur confirmé
Ce cours vous permettra de disposer de solides bases pour développer des applications professionnelles autour des incontournables phénomènes de société que sont devenus l’iPhone et l’iPad réunis sous la bannière iOS.
La formation est très orientée pratique avec de nombreux ateliers. Bien entendu nous prenons le temps d’exposer les concepts, les bases théoriques et les éléments d’architecture nécessaires au recul que doit posséder tout développeur Swift professionnel.
Les ateliers sont conçus de façon progressive pour constituer les solides bases de vos futurs développements. Concrètement cette formation Swift aborde toutes les notions nécessaires au développement de votre première application de bout en bout : composants graphiques, service web, stockage de données, interactions utilisateurs, debug, etc.
Vous profitez également de l’expérience du formateur et de sa solide connaissance de l’éco système Apple pour découvrir les bonnes pratiques d’utilisation de l’environnement de développement (Xcode, iOS dernières versions en cours). Les nouveautés Swift seront également présentées.
À qui s’adresse cette formation ?
Public :
Cette formation sur la programmation iPhone/iPad en langage Swift s’adresse aux ingénieurs logiciels, développeurs, analystes programmeurs, chefs de projets.
Prérequis :
De bonnes connaissances de la programmation et d’un langage orienté objet (C++, Java, C#, PHP5 objet, etc.) sont demandées pour suivre ce stage dans les meilleures conditions possibles. La formation ne prévoit pas de revenir sur les fondamentaux de la programmation objet (classe, instance, héritage, etc.)
Contenu du cours iOS Swift Développeur confirmé
Introduction et première application iOS
Xcode (IDE)
Organisation d’un projet
Interface Builder
Storyboard, éléments basiques d’interface utilisateur
UIViewController
Atelier 1 : création d’une interface utilisateur simple avec texte, image et bouton.
Nouveautés de Xcode
Les changements au quotidien avec Xcode (mode foncé, multi-curseurs, bibliothèque « library », etc.)
Intégration avec GitHub, Gitlab et Bitbucket
Compilation et débogage accélérés
Prise en charge des nouveautés par rapport aux dernières versions de iOS et MacOS
Autres nouveautés…
Bases du langage Swift
Types de base
Variables et constantes
Opérateurs, instructions de contrôle, fonctions, classes
Optionals
Collections
Dates
Parsing automatique de données json (Codable)
Atelier 2 : prise en main du langage Swift via le parsing de données json de films.
Composants graphiques d’une application et navigation entre écrans
Composants graphiques (UIKit)
Notion d’expérience utilisateur
Onglets (UITabBarController)
Transition entre écrans (UINavigationController et segue)
Listes (UITableView, UITableViewController) et Grilles (UICollectionView)
Patterns delegate et datasource
Atelier 3 : organisation et navigation dans une application présentant une liste de films.
Mise en page avec Auto-Layout
Tailles d’écran et appareils
Types de contraintes de layout dans Interface Builder
Notion de « intrinsic content size »
Notion de « hugging » et de « compression resistance »
Notion de « safe area »
Texte de taille dynamique
Atelier 4 : prise en main du système de mise en page auto-layout avec l’app catalogue de films
Appel de services web
Éléments plus avancés du langage Swift
Closures et code asynchrone
Cocoapods (système de gestion de dépendances)
Alamofire : librairie de networking
Atelier 5 : appel d’un service web pour utiliser des vraies données de films dans l’app des ateliers.
Formulaire de connexion et compte utilisateur
Formulaire de connexion (UIScrollView, UITextField)
Gestion du clavier
Persistance de données (Keychain, UserDefaults)
Persistance de données plus avancées (Sqlite, CoreData, Realm, Firebase)
Feedback utilisateur, indicateur d’activité
Gestion des messages d’erreur (UIAlertController)
Atelier 6 : connexion à un compte utilisateur dans l’application catalogue (suite des ateliers 3, 4 et 5)
Debug
Debugger, breakpoints
Rapports de crash
Cycle de vie d’une application
Cycle de vie des UIViewControllers
Instrument
Notions de gestion mémoire (ARC)
Notions de threading
Atelier 7 : prise en main des outils fournis par Xcode pour arriver à corriger des bugs dans une base de code existante.
Publication d’une application sur l’App Store
Crashlytics
Apple developer program
Itunesconnect
TestFlight
Checklist avant la publication sur l’App Store
App Store review
Objective-C et Swift dans un même projet
Cartes
Affichage d’une carte avec MapKit
Affichage de points sur une carte
Interaction utilisateur avec la carte
Notion de régions
Atelier 8 : création d’une application qui affiche des lieux insolites repérés depuis Google Earth.
Géolocalisation et notifications
Géolocalisation avec CoreLocation
Position de l’utilisateur sur une carte
Différentes options de géolocalisation proposées par iOS
Notifications utilisateur
Gestion des droits utilisateur sur iOS
Simulation de position pour le debug de la géolocalisation
Atelier 9 : création d’une application qui prévient l’utilisateur quand il entre dans une zone
Travaux Pratiques
Le cours est constitué de 9 ateliers.
Le but est de couvrir les cas d’usages que l’on retrouve dans toutes les applications ou presque.
Chaque atelier est précédé des explications nécessaires (concepts et architecture) et se termine sous forme de synthèse en présentant les bonnes pratiques mises en œuvre dans les développements professionnels.