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.

Image de Développer des applications iOS 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