Formation iPhone/iPad développement avancé Réf : DNIA

Par Stéphane Prohaszka

Perfectionnez vos techniques de développement iPhone, iPad et iTouch.

Durée :
4 jours

2 365 € HT (prix conseillé)

Partage :

  • Twitter
  • Facebook
  • E-mail
  • Linkedin
  • Viadeo

Soyez alertés par e-mail des nouvelles sessions : Poser une alerte,

Description

Cette formation 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, et inclut IOS SDK 6, les API iCloud/UIDocument. Les spécifités de l'iPad, des écrans secondaires et des nouveaux matériels sous iOS seront abordées.

Objectifs pédagogiques

A l'issue de la formation, les participants seront en mesure de :
  • Développer des applications mobiles industrielles,
  • Optimiser toutes les composantes d'une application iPhone (mémoire, performances, déploiement),
  • Paramétrer les équipements iPhone, iPad ou iPod Touch,
  • Définir une configuration type (réglages, applications),
  • Déployer rapidement une application (en wifi si nécessaire) sur l'ensemble de ses appareils en s'appuyant éventuellement sur son propre AppStore.


Public

  • Ingénieurs logiciels,
  • Développeurs,
  • Analystes programmeur
  • Chefs de projet

Pré-requis

Maîtrise de Objective C et du développement iPhone, et bases XCode.

Type

Stage pratique

Méthode pédagogique

Alternance de présentation magistrale (50%) et de travaux pratiques sur poste individuel (50%).

Plan de cours

PROGRAMME DE LA 1ERE JOURNEE DE FORMATION
Rappels et compléments sur le développement iPhone
Matériels (iPhones, iPods touch, iPad) 
Différences entre les firmware (3.x à 6.x) 
Les nouveautés de l'environnement de développement Xcode 4
Storyboard, segue, Autolayout et rotation
Particularités du système d'exploitation iOS 
Les frameworks de base (Foundation, Cocoa, ...) 
Les spécificités de l'iPad, les applications universelles

Multithreading (parallélisme et performances)
Les possibilités du multithreading Architecture technique du multithreading 
Un gain de performance systématique ? 
Les classes NSThread, NSInvocation, NSInvocationQueue, NSInvocationOperation 
Classes et méthodes d'appels et de gestion des webservices 
Multithreading et appels de web services intensifs 
Utilisation du Grand Central Dispatch (GCD)
Les alternatives au multithreading (fonctions asynchrones, timer, key-value observer, idle-time-notification, ...)
Les «objets» blocks en Objective-C

Graphiques et Animation (framework CoreAnimation)
Produire des interfaces animées avec Core Animation 
L'interface unifiée pour accéder à CoreImage, CoreVideo et CoreGraphics/Quartz 
Animation : la hiérarchie d'arborescence de calques (Layers) 
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)
Overlay video : ajouter votre calque virtuel pendant une acquisition avec la caméra (UIVideoEditorController, cameraOverlayView) 
Acquisition audio et video : Framework AVCaptureDevice

Gestion avancée des TableViews
Passage de données en avant
Utilisation d'un protocole pour un passage de données en arrière
Utilisation d'unwind segues pour un passage de données en arrrière
Ajouter un index
Mise en place du pull to refresh
Mise en place du swipe to delete

PROGRAMME DE LA 2NDE JOURNEE DE FORMATION
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 d'utilisation d'une plist (property list)
Rappels XML
Rappels JSON
Architecture 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 
Transaction et objet

iCloud, une nouvelle philosophie pour le développement
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 ces applications sur iCloud 
Une SandBox iCloud pour chaque application

PROGRAMME DE LA 3EME JOURNEE DE FORMATION
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)
Géocodage «forward» avec support multi-langues

Introduction à l'audio (Framework CoreAudio)
Les 3 couches de l'architecture de l'API : bas niveau (HAL, I/O, Core Midi), niveau intermédiaire (Audio Unit, Audio Services, ...) et haut niveau (Open AL, Media Player, ...) 
Lecture audio en utilisant la classe AVAudioPlayer 
Utiliser les APIs pour les unités et codecs audios avec AudioUnit 
Créer une interface utilisateur Cocoa pour une unité audio avec CoreAudioKit 
S'interfacer avec le hardware (HAL services) avec CoreAudio 
La richesse du framework OpenAL (Audio Library) 
Mise en oeuvre du Media Player standard pour l'audio et la video 
Le framework AudioToolbox pour accéder aux applications

Problèmes classiques et solutions (Tuning et deboggage)
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 
Exemples concrets de gains de performances 
Xcode 4.x : LLVM, LLDB
De la bonne utilisation du système de fichiers Debugger efficacement avec gdb 
Améliorer les performances avec l'outil Instruments

Compléments iOS 5
Intégration des réseaux sociaux à tous les niveaux du système (intégration Twitter) 
La reconnaissance faciale (principes et exemples d'utilisation)
Exemple d'identification via une webcam

PROGRAMME DE LA 4EME JOURNEE DE FORMATION
Sécuriser ses applications
« L'attrait »  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, ...) 
Blocage/Déblocage officiel d'un iPhone

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, certificat) 
Mise en oeuvre du push côté serveur (token, gestion des notifications, feedback service) 
Limites des notifications (messages critiques, taille des messages, ...) 
Attention à la montée en charge : les solutions Application Service Provider
Notification locales associées, nouvelles options APNS avec iOS 5 
Nouvelles API, options pour le programmeurs et pour l'utilisateur.
Mise en perspective avec la nouvelle gestion de la géo-localisation, notification locales associées, ...

Tester et distribuer son application sur l'Appstore
IN/OUT testing (test "over the air")
Distribution sans fil des applications
Les Préconisations d'Apple
Les achats intégrés (StoreKit,InApp purchase)
Les différents Certificats de distribution
Retrait ou mise à jour d'une application
Les différences entre iTunes App Store et App Store
Les outils de Versionning 
Disposer de son « propre » AppStore : le déploiement «In House»
Les contraintes d'Apple (licence « Enterprise program », DUNS, number obligation) 
Le coût exact des licences 
Créer son propre dépôt d'application 
Utilisation d'iTunes en entreprise
Mise en place de IAD pour ajouter des bandeaux publicitaires à vos applications
Configuration des équipements pour utiliser un dépôt précis

Administrer en entreprise les iPhone
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 pratique au fil du stage
Réalisation d'une application globale jusqu'à sa commercialisation et son déploiement.
Utilisation d'émulateurs ainsi que de véritables équipements iPhones, iPod, iPad, Apple TV 2G (Airplay).

Prochaines sessions

Aucune session de planifiée à ce jour, veuillez nous contacter pour avoir plus d'info ou suggérez vous-même une session.


Proposer une session.

Pas de témoignage pour l'instant.

Cher(e) visiteur(euse),
Nous vous remercions pour l'intérêt porté à nos formations. La pré-inscription à une session de formation se fait via le formulaire d'inscription de la page formation.

La Convention de Formation Professionnelle Continue simplifiée vous sera envoyée par mail dans les 72H max. Votre inscription est considérée comme définitive, une fois cette convention signée par votre entreprise ou OPCA. La facture sera émise à l'issue de la formation, comme mentionnée dans nos conditions générales de vente.

A noter que les demandeurs d'emploi peuvent bénéficier d'une remise de 20% sur le prix public.

Pour toute information complémentaire ou demande de devis, n'hésitez pas à nous contacter au 01 53 34 66 10 ou à nous solliciter par mail.

A très bientôt dans l'un de nos centres de formation.
L'équipe Clever-Institut.

Les autres formations « Développement mobile et tablette »  – Voir toutes les formations