Vous trouverez dans cette formation les spécificités du développement d’applications iOS en Swift. Swift est le langage de programmation d’Apple qui va vous permettre de développer des apps pour iOS, Apple TV, Mac, Apple Watch. Vous apprendrez à concevoir des interfaces via XCode, à gérer la navigation et les gestures.

Description

Durée : 28 heures
Modalités techniques d’évaluation : Évaluation des connaissances par QCM, évaluation des compétences au travers de travaux pratiques et de cas d’études. Contrôle de l’acquisition des connaissances et des compétences pendant la formation par le formateur.
Moyens pédagogiques : Apports théoriques réalisés en classe et complétés par de nombreux travaux pratiques permettent aux participants de disposer d’une expérience concrète. A l’issue des sessions magistrales, réalisation de cas d’études tutorés.

Objectifs pédagogiques

À l’issue de la formation, le participant sera en mesure de :

  • Développer des applications iOS performantes en Swift
  • Exploiter les fonctionnalités d’un iPhone et d’un iPad (GPS, caméra, accéléromètre…)
  • Intégrer du code Swift et du code Objective-C
  • Maîtriser le simulateur iOS
PROGRAMME DE FORMATION

Les bases du langage Swift

  • Variables, constantes, tuples, chaînes de caractères.
  • L’optional et sa gestion, l’unwrapped.
  • Opérateurs et structures de contrôle.
  • Closures et fonctions.
  • Classes, structures, énumérations, propriétés.
  • L’héritage et les protocoles.

Travaux pratiques
Mise en oeuvre des concepts de Swift.

Environnement de développement

  • XCode, l’interface Builder et les divers outils disponibles.
  • Le débogueur.
  • Les outils de mesure : instruments.
  • Le portail du développeur Apple.

Travaux pratiques
Mise en oeuvre avec Swift et Interface Builder (UI).

La gestion graphique

  • Architecture, mémoire, consommation et modes (Background, Foreground).
  • AppDelegate : cycle de vie et fonctionnement.
  • Interface Builder : storyboards et segues.
  • Contrôleur de navigation, TableView Controller, CollectionView Controller.
  • TabBar Controller : création et implémentation.
  • Gestion des vues : UIView, les widgets disponibles.
  • Dessiner dans les vues, animations.

Travaux pratiques
Mise en œuvre des concepts sur les segues, TableView Controller (listes).

Les gestures

  • Gestures dans la vue.
  • Gestures dans le simulateur : utilisation et limitation.
  • Ajouter des gestures avec l’Interface Builder, par code.

Travaux pratiques
Mise en oeuvre de plusieurs gestures dans un contrôleur.

Le réseau et les Web Services, la gestion des données sous iOS

  • Gestions des notifications (Push).
  • Asynchronisme avec Grand Central Dispatch.
  • Gestion des appels de Web Services en JSON.
  • Sérialisation et désérialisation au format JSON.
  • Organisation des données.
  • Gestion des préférences, des fichiers dans le bac à sable.
  • ORM : création de modèles de données, implémentation.

Travaux pratiques
Appel d’un Web Services en JSON et de ressources sur Internet. Gérer les données avec CoreData.

La géolocalisation et le géocoding

  • Géolocalisation par GPS et réseau.
  • Architecture de base : CLLocationManager et sécurité.
  • Mise en oeuvre de la géolocalisation.
  • Gestion des erreurs.

Travaux pratiques
Mise en oeuvre de la géolocalisation.

L’interaction Swift et Objective-C

  • Héritage, syntaxes et types de données : comparaison.
  • Points particuliers et limitations.

Introduction à SwiftUI

  • SwiftUI et XCode.
  • Créations de vues.
  • Gestion des états et des données partagées.
  • Gestion des listes et de la navigation.
  • Gestures, animations et transitions.
  • UIViewControllers et SwiftUI.

Travaux pratiques
Création d’un projet avec vues personnalisées, vues multiples, vues en liste.