Objectifs de formation
A l'issue de cette formation, vous serez capable de :
- Programmer avec les dernières versions de Swift
- Identifier les particularités de ce langage
- Gérer des appels asynchrones et l'isolation des éléments critiques
- Utiliser la programmation fonctionnelle.
Prérequis
Avoir une connaissance pratique d'un langage de programmation objet (Java, C++, C#).
Validez les prérequis
Afin de vérifier que vous disposez bien des prérequis nécessaires à cette formation, nous vous invitons à réaliser ce test.
Temps estimé : 4 minutes.
Passer le testPublic concerné
Développeurs, architectes et chefs de projets techniques.
Programme
Jour 1
Ecosystème Swift
- Historique
- Environnements de développements
- Swift Package Manager
Types
- Inférence
- Généricité
- Type algébrique de données (enum, tuple)
Optionnels
- Pourquoi les optionnels
- Patterns de mise en oeuvre
Accès aux éléments
- Destructuration
- Dictionnaire
- Subscripts
- Keypath
Exemple de travaux pratiques (à titre indicatif)
- Création d'un Swift Playground contenant chacune des notions abordées
Jour 2
Fonctions
- Closures
- Imbrications
- Fonctions de premier ordre
Définition d'un élément Swift
- Paramètre par valeur ou par référence
- Allocation heap ou stack
- Mutabilité
- Struct ou class
- Reference counting
- Initialisation
- Protocole
- Extension
Appels asynchrones
- async
- await
Tâches et groupes de tâches
- Lancement
- Annulation
- Thread d'exécution
- Résultat
Exemple de travaux pratiques (à titre indicatif)
- Lecture d'objets structurés avec une API REST asynchrone
Jour 3
Séquences synchrones et asynchrones
- Programmation fonctionnelle réactive
- Transformations
- Assemblages entre séquences
- Opération terminale
Actor
- Notion d'isolation
- Sendable
- Main actor
Erreurs et exceptions
- Définition
- Affichage
- do, catch, try
Swift Testing
- Fonctions de test unitaire
- Suites de test
Exemples de travaux pratiques (à titre indicatif)
- Création d'une application avec gestion de timeout et récupération des erreurs
Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.
Modalités, méthodes et moyens pédagogiques
Formation délivrée en présentiel ou distanciel* (blended-learning, 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 certains 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 informatiques...) 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
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
Accessibilité de la formation
Le groupe M2i s'engage pour faciliter l'accessibilité de ses formations. Les détails de l'accueil des personnes en situation de handicap sont consultables sur la page Accueil et Handicap.
Modalités et délais d’accès à la formation
Les formations M2i sont disponibles selon les modalités proposées sur la page programme. Les inscriptions sont possibles jusqu'à 48 heures ouvrées avant le début de la formation. Dans le cas d'une formation financée par le CPF, ce délai est porté à 11 jours ouvrés.