Formation Swift, développement avancé pour iPhone / iPad


  • DÉPLOIEMENT IN-HOUSE, OPTIMISATION, MULTITHREADING, WEBSERVICES, GÉOLOCALISATION, ANIMATION, AUDIO, PROVISIONNING, SWIFT, XCODE, IOS (DERNIÈRES VERSIONS EN COURS)
REFERENCE
 
 
UPHA2
DUREE
 
 
4 jours
TARIFS
 
 
2260 € HT
Niveau : Avancé
Cours à distance: Possible
OBJECTIFS :
 

Cette formation iOS intensive vous permettra de perfectionner vos techniques de développement pour iPhone, iPod touch, ou iPad autour des frameworks du SDK (multi-threading, web services, géo-localisation, stockage des données, son, animation). Il s'agit de vous faire gagner du temps en vous proposant une synthèse des principales classes, méthodes, et bonnes manières pour les utiliser de façon performante à travers les exemples couramment rencontrés dans les applications professionnelles fonctionnant sous iOS. L'environnement de développement est Xcode 9 et iOS 11. Les spécificités de l'iPad, des écrans secondaires et des nouveaux matériels sous iOS seront abordées. Cette formation iPhone vous permettra également d'être le référent technique pour le paramétrage des équipements iPhone, iPad ou iPod Touch en entreprise. Vous saurez définir une configuration type (réglages, applications) et la déployer rapidement (en wifi si nécessaire) sur l'ensemble de vos appareils en vous appuyant éventuellement sur votre propre AppStore.

PRÉ-REQUIS :
 

Avoir suivi la formation Swift, développer des applications iOS (iPhone/iPad) (réf. UPHD2) ou disposer de connaissances équivalentes (langage Swift, bases Xcode et développement iPhone/iPad).

PUBLIC :
 

Cette formation iPhone s'adresse aux ingénieurs logiciels, développeurs, analystes programmeur et aux chefs de projet.

PROGRAMME :
 

Rappels et compléments sur le développement iPhone / iPod touch / iPad

Matériels (iPhones, iPods touch, iPad)  Différences entre les versions d'iOS  Les nouveautés de l'environnement de développement Xcode Storyboard, segue, Autolayout et rotation (traits) Particularités du système d'exploitation iOS

Multithreading (parallélisme et performances)

Architecture technique du multithreading  Un gain de performance systématique ? Classes et méthodes d'appels et de gestion des webservices  Multithreading et appels de web services intensifs  Utilisation de Grand Central Dispatch (GCD) Les alternatives au multithreading (fonctions asynchrones, timers, key-value observers, notifications, ...) Les closures
Comment "réveiller" son application (background fetch, background transfer, remote notifications)

Graphiques et Animation (UIKit et CoreAnimation)

Conseils et bonnes pratiques Produire des interfaces animées avec UIKit et Core Animation  Proposer des animations réalistes avec UIKit Dynamics Déplacer un élément avec Sprite Kit L'interface unifiée pour accéder à CoreImage, CoreVideo et CoreGraphics/Quartz  Animation : la hiérarchie d'arborescence de calques (CALayers)  Faire tout type de transition avec les layers (CATransition)  Rotation d'une UIImage dans une UImageView Gérer un contenu plus grand que le contenant (UIScrollView)
Introduction à OpenGL (décomposition d'une image en triangles, matrices et transformations)

Gestion avancée des TableViews

Utilisation d’un protocol pour le passage des données Ajouter un index Tri dans une liste Recherche dans une liste Mise en place du pull to refresh Mise en place du swipe to delete
Utilisation du prefetching

Géo-localisation et MapKit

Connaître la position géographique de l'utilisateur  Les classes CLLocation et CLLocationManager, et le protocole optionnel CLLocationManagerDelegate  Les possibilités du framework MapKit (plan de ville, cartographie, marques, ...) Mise en oeuvre des deux variantes de Reverse-Geocoding Enregistrement auprès du système de la supervision de régions géographiques

La persistance des données

Rappels PLIST, JSON, NSKeyedArchiver / NSKeyedUnarchiver
Utilisation du protocol Codable en SwiftArchitecture de CoreData Représentation modélisée des relations entre les objets avec CoreData  Impact de l'utilisation de CoreData pour les objets (context)  Vocabulaire (managed objects, fetch request, ...)  Méthodes et propriétés à utiliser pour sauvegarder/charger un objet ? Gestion des transactions

iCloud, et le CloudKit

Rappels : Une nouvelle philosophie pour les utilisateurs et les développeurs Le modèle iCloud d'Apple (architecture et services offerts) Les différentes API de stockage iCloud  Le principe du stockage par paires clé/valeur iCloud et le modèle SandBox pour les applications Exemples de stockage en ligne avec iCloud API bas niveau (gestion de version) Déployer des documents, packages et répertoires pour ses applications sur iCloud Utilisation du CloudKit Une SandBox iCloud pour chaque application

Internationalisation

Rappels des bonnes pratiques à propos de l'internationalisation  Cas des langues non occidentales et des variantes régionales  Exemples de chargement d'image dynamique en fonction de la langue (Locales)

Tuning et deboggage des applications iOS

Vue d'ensemble des paramètres importants Savoir observer les performances  Adapter le code avec la compilation conditionnelle  Adapter le code en fonction des équipements (iPhone, iPad) Exemples concrets de gains de performances avec Xcode Améliorer les performances avec l'outil Instruments
Nouveaux outils d’Xcode (memory debugger, main thread checker,…)

Accéder aux informations personnelles

Accéder au calendrier Accéder aux contacts Envoyer un SMS/iMessages Envoyer un Mail (in-App Mail) Appeler un contact depuis une application

Compléments

Intégration des réseaux sociaux à tous les niveaux du système (Facebook, Twitter) La reconnaissance faciale sur l'iphone X (principes et exemples d'utilisation) Intégration de SiriKit dans vos applications
Intgération de Messages dans vos applications

Sécuriser ses applications iOS

L'attrait de l'iPhone pour les pirates
Fonctionnement classique d'une application (API Apple, isolation, bac à sable mémoire et système de fichiers, ...)
Réflexions sur les failles de chaque composant (matériel, logiciel standard, application, ...)
Informations sur le Jailbreak

Service de notification par «push»

Recevoir des événements extérieurs en « continu » (Apple Push Notification Service)  Différences avec une application traditionnelle (Pull design)  Comprendre le circuit de notification (Notification Server, APN Service, équipement, certificat SSL, application)
Contenu d'une notification APN au format JSON (liste de propriétés, token) 
Mise en oeuvre du push côté client (méthodes et API utilisées)  Mise en oeuvre du push côté serveur (token, gestion des notifications, feedback service, certificat) Limites des notifications (messages critiques, taille des messages, ...)  Attention à la montée en charge : les solutions Application Service Provider Notification locales associées, options APNS Options pour le programmeur et pour l'utilisateur Mise en perspective avec la géo-localisation, notification locales associées, ...

Tester et distribuer son application sur l'Appstore?

IN/OUT test ( test "over the air") Distribution sans fil des applications Les «contraintes» préconisées par Apple pour les achats intégrés (StoreKit,InApp purchase)? A quoi servent les différents certificats de distribution ?  Retrait ou mise à jour d'une application ? Disposer de son « propre » AppStore : le déploiement «In House»? Les contraintes d'Apple (licence « Enterprise program », DUNS)  Le coût exact des licences  Créer son propre dépôt d'application  Utilisation d'iTunes en entreprise Configuration des équipements pour utiliser un dépôt précis

Administrer en entreprise les iPhone, iPod touch et iPad?

Présentation de l'outil iPhone « Configuration Utility »  Créer un profil de configuration (réglages wifi, mail, ...)  Paramétrage des restrictions (installation, achat, navigation Web, ...)  Réglages avancés (LDAP, VPN, point d'accès, proxy, ...)  Gérer les applications avec les profils d'approvisionnements (installation, expiration)  Déployer un profil de configuration sur plusieurs équipements (USB, mail, WEB)  Savoir interpréter les événements de la console d'un équipement

TRAVAUX PRATIQUES :
 

Beaucoup de pratiques autour du développement d'applications réalistes en Swift

Les avis figurant ci-dessous sont issus des fiches d’évaluation que remplissent les participants à la fin de la formation. Ils sont ensuite publiés automatiquement si les personnes ont explicitement accepté que nous les diffusions. Avis des participants à la formation Swift, développement avancé pour iPhone / iPad : Note moyenne : 5/5
5/5
Avis certifié A suivi un cours chez PLB

MD

Mon avis sur le formateur :

"L'animateur maitrise parfaitement le sujet de la formation. "

Mon avis sur la salle de formation :

"Environnement de formation agréable"

Ce que j'ai le plus apprécié :

"Les locaux"

S'INSCRIRE À CETTE
FORMATION PROGRAMMATION IOS AVANCÉ
Cliquez sur une date pour vous inscrire
Information pratiques sur
LA FORMATION
Lieu de la formation Paris - LA DEFENSE
Nous contacter 01 43 34 90 94
CETTE FORMATION SUR-MESURE Ce cours est réalisable en intra-entreprise, dans vos locaux ou nos salles de cours CONTACTER NOTRE SERVICE INTRA
D'autres formations
SUR LE MÊME THÈME

3 j

 
Concrètement, cette formation SwiftUI vous apporte les connaissances et compétences nécessaires pour : Savoir créer des vues Swift UI et les intégrer...

3 j

 

Télécom - Mobile

Objective C
Il y a déjà plus de 10 ans, NeXT donnait à Objective-C ses titres de noblesse en l'adoptant pour la réalisation du système d'exploitation NEXTSTEP. Il...

5 j

 
Ce cours intensif vous permettra de disposer de solides bases pour développer des applications professionnelles autour des incontournables phénomènes de société...

4 j

 
Cette formation iOS intensive vous permettra de perfectionner vos techniques de développement pour iPhone ou iPad autour de Xcode  sous iOS (multi-threading, web services,...
Plus de formations sur le même thème

Des questions ?

ON VOUS RAPPELLE

 

0

Formations
Informatique
et Management
en ligne à ce jour

+ 0

Stagiaires dans nos
salles de cours sur
l'année

0%

De participants
satisfaits ou très
satisfaits de nos
formations

0

Formateurs experts
validés PLB