formation objective c ipad iphone

Développement Objective C pour iPad / iPhone

Développer des applications professionnelles pour Iphone / Ipad / iPod / iPad Apple TV

Contactez un conseiller formation

Parcourez les différents niveaux et spécialités de formation Objective C.

Formation Développement Objective C initiation

5 jours (35 heures)


La formation Objective C vous permettra de comprendre la conception d’une application mobile, d’utiliser les API du SDK pour interagir avec l’iPhone ou l’iPad, de maîtriser les spécificités de compilation pour chacun des appareils, et d’optimiser l’utilisation de la mémoire de l’application développée pour garantir les performances de l’appareil. 

 

Prérequis
Connaissance d’Objective C. Bonnes connaissances de la programmation et d’un langage orienté objet (C++, Java, C#, PHP5 objet, …)
Public
Ingénieur logiciel, développeur, analyste programmeur, chef de projet
Méthodes pédagogiques
Exercices et cas pratiques construits à partir de cas professionnels et /ou issus de l’expérience des stagiaires. Un cas pratique est déployé tout au long de la formation de la réalisation au déploiement et la commercialisation de l’application.

Dates & Lieux

PARIS
    • 18 02 2019 - 22 02 2019 @ 
    • 17 06 2019 - 21 06 2019 @ 
    • 21 10 2019 - 25 10 2019 @ 
ROUEN
Formation planifiée à la demande.

DANS VOS LOCAUX

Personnalisez votre formation : objectifs, contenu, durée, lieu et dates selon vos attentes.

Programme

LES ARCHITECTURES IPHONE / IPOD TOUCH / IPAD

  • Un marché porteur
  • La “sécurité” économique du modèle de développement
  • Les spécificités du matériel (processeur, mémoire, disque, …)
  • Différences concrètes entre les modèles
  • Les besoins en ressources selon l’utilisation
  • Impacts du firmware sur les applications
  • Contraintes de développement liées à la plate-forme iPhone
  • Particularités du système d’exploitation iOS
  • Pourquoi utiliser Objective C ?
  • Comment créer une application pour iPhone ?
  • Comment développer des applications pour iPhone ?

L’ENVIRONNEMENT DE DÉVELOPPEMENT

  • Configuration Mac nécessaire
  • Présentation des outils et IDE disponibles (Xcode incluant Interface Builder, iPhone Simulator)
  • Démarrer un nouveau projet avec Xcode
  • Compiler à destination de l’iPhone / iPod touch / iPad
  • Compiler à destination de l’iPhone / iPod touch (Organizer)
  • Pourquoi faut-il signer un binaire (Target) ?
  • Les pragma XCode / compilateurs ObjC
  • Concevoir ses propres modèles (templates) de projet
  • Le simulateur iPhone/iPad
  • Où trouver de l’aide ?

LE LANGAGE OBJECTIVE-C 2.0

  • Présentation générale et vocabulaire
  • Comparatif langages orientés objet Objective-C, C++ et Java
  • Philosophie des messages
  • Les méthodes et les classes
  • Création de classes et d’instances
  • L’importance des conventions de nommage
  • Différence entre classe et interface
  • Accès et portée des variables d’instances
  • Propagation des messages
  • La directive @selector
  • S’y retrouver dans la documentation officielle
  • Objective-C 2.0 runtime référence
  • Catégories et extensions
  • Les propriétés déclarées (@property)
  • L’utilité des protocoles (@protocol)
  • Déclarations des interfaces
  • Une gestion de la mémoire performante avec ARC (Automatic Reference Counting)

LES API COCOA TOUCH DU SDK IPHONE

  • Tour d’horizon des principales API par thème
  • Les grandes lignes des méthodes de codage avec Cocoa
  • Classes de base et hiérarchie
  • Conventions de nommage et comportements attendus
  • Héritage ou bien composition et connaissance ?

LA GESTION DES DONNÉES AVEC LE FRAMEWORK FOUNDATION

  • Philosophie du Framework foundation
  • Les classes fondamentales communes à tous les traitements
  • Utilité des collections string, text et fonts (NSCharacterSet) dates, times et numbers (NSDate)
  • Interfacer son application avec les réglages utilisateurs standards système

L’INTERFACE UTILISATEUR POUR VOS APPLICATIONS IOS

  • Description de l’interface builder : Storyboards et segues
  • Les apports du framework UIKit
  • Comprendre l’intérêt du modèle MVC (Model View Controller)
  • Les classes contrôleur de View (Controller View) UIView, sous-classe UIResponder (réponse/gestion événements utilisateurs)
  • La hiérarchie des Views et leur géométrie
  • Les interactions entre les objets View dans UIKit
  • L’architecture de rendu des Views
  • Le système de coordonnées des Views
  • Hiérarchies des classes UIResponder / UIWindow / UIView
  • Combiner une barre d’onglets (Tab Bar) et des contrôleurs de navigation
  • Exemple UIView / UIImageView
  • Appliquer une transition à une View dans un bloc d’animation
  • Utilisation des UIAlertController
  • Utilisation des UITableViews et présentation des UICollectionViews

COMPLÉMENTS

  • Méthodes de contact et gestures
  • Gestion de la géolocalisation, Mapkit
  • Diffuser du contenu (musique, photos, vidéos) en Wifi (Airplay, Apple TV)

PROFESSIONNALISER SON APPLICATION IPHONE/IPAD

  • Problématiques de l’internationalisation
  • Désignation des langues (lproj)
  • Présentation de la distribution de son application sur l’Appstore
  • Les “contraintes” imposées par Apple
  • A quoi sert le certificat de distribution ?
  • Quels outils pour le versionning de l’application distribuée ?
  • Publication sur iTunes AppStore

PRÉSENTATION DES NOUVEAUTÉS IOS10

  • Xcode
  • Passage en revue des principales améliorations
  • Migrer une application iOS9 en iOS10

Formation Développement Objective C perfectionnement

5 jours (35 heures)


La formation Objective C vous permettra de comprendre comment développer des applications à vocation industrielles, d’être capable d’optimiser toutes les composantes d’une application (mémoire, performances, déploiement) et d’utiliser effcacement la géolocalisation au sein des applications. 

 

Prérequis
Avoir suivi le niveau d’initiation ou posséder des compétences équivalentes.
Public
Ingénieur logiciel, développeur, analyste programmeur, chef de projet
Méthodes pédagogiques
Exercices et cas pratiques construits à partir de cas professionnels et /ou issus de l’expérience des stagiaires. Un cas pratique est déployé tout au long de la formation de la réalisation au déploiement et la commercialisation de l’application.

Dates & Lieux

PARIS
    • 25 02 2019 - 01 03 2019 @ 
    • 24 06 2019 - 28 06 2019 @ 
    • 28 10 2019 - 01 11 2019 @ 
ROUEN
Formation planifiée à la demande.

DANS VOS LOCAUX

Personnalisez votre formation : objectifs, contenu, durée, lieu et dates selon vos attentes.

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 6
  • Storyboard, segue, Autolayout et rotation
  • Particularités du système d’exploitation iOS 8
  • 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 web services
  • 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
  • Comment “réveiller” son application (background fetch, background transfer, etc.) ?

GRAPHIQUES ET ANIMATIONS (FRAMEWORK COREANIMATION)

  • Conseils et bonnes pratiques
  • Produire des interfaces animées avec 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 (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)
  • Introduction à OpenGL (décomposition d’une image en triangles, matrices et transformations)

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’un wind segues pour un passage de données en arrière
  • Ajouter un index
  • Mise en place du pull to refresh
  • Mise en place du swipe to delete

GÉOLOCALISATION 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

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)

INTRODUCTION À L’AUDIO DANS LES APPLICATIONS IOS (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 vidéo
  • Le Framework AudioToolbox pour accéder aux applications

PROBLÈMES CLASSIQUES ET SOLUTIONS – TUNING ET DÉBOGAGE DES APPLICATIONS POUR IPHONE/IPOD TOUCH/IPAD

  • 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 avec Xcode 6
  • De la bonne utilisation du système de fichiers
  • Debugger efficacement avec gdb
  • Améliorer les performances avec l’outil Instruments

COMPLÉMENTS

  • 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

SÉCURISER SES APPLICATIONS IPHONE/IPOD TOUCH/IPAD

  • “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, …)
  • 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 depuis iOS 8
  • Nouvelles API, options pour le programmeur et pour l’utilisateur
  • Mise en perspective avec la nouvelle gestion de la géolocalisation, notification locales associées, …
  • TESTER ET DISTRIBUER SON APPLICATION SUR L’APPSTORE
  • IN/OUT testinf (test “over the air”)
  • Distribution sans-fil des applications
  • Les “contraintes” préconisées par Apple
  • Les achats intégrés (StoreKit,InApp purchase)
  • A quoi servent les différents certificats de distribution ?
  • Retrait ou mise à jour d’une application
  • Quels outils pour le versionning de l’application distribuée ?
  • 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, 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

Suivi post-formation

Notre formateur restera disponible par mail pendant 6 mois pour répondre à vos questions. Le formateur répondra sous 48h par mail ou téléphone en fonction de la nature de la demande.

 

Plus…

Loading...