Recherche avancée
Par formation
Par date
Par ville
logo HUB Formation
Organisme de Formation
aux Technologies et métiers de L'informatique
La pédagogie au service de la technologie
> > > > iPhone / iPad - Développement Swift

iPhone / iPad - Développement Swift

Développement d’applications iPhone / iPad avec un langage de dernière génération

apple
Successeur du vieillissant Objective C (créé au début des années 1980), Swift, le nouveau langage proposé par Apple, a été très favorablement accueilli pas les développeurs IOS. En effaçant certaines des lacunes de son aïeul et en proposant de meilleures performances, Swift a, selon certains, hérité de la puissance de l’Objective-C, mais sans le passif du C. Cette formation de 5 jours permettra aux futurs développeurs IOS de prendre en main ce nouveau langage et de comprendre ce en quoi il simplifie les développements.

Objectifs

  • Comprendre les architectures techniques des iPhone et Ipad
  • Prendre en main l’environnement de développement
  • Comprendre les spécificités et caractéristiques du langage Swift
  • Être capable d'utiliser les API du SDK pour interagir avec l'Ipod ou l'Ipad
  • Connaître les spécificités de compilation pour chacun des appareils
  • Être en mesure d'optimiser l'utilisation de la mémoire par l'application développée pour garantir les performances de l'appareil

Public

  • Ingénieur logiciel, développeur ou analyste programmeur

Prérequis

  • Bonnes connaissances de la programmation et d'un langage orienté objet (C++, Java, C#, PHP5 objet, ...)
  • Disposer de connaissances basiques en Objective C

Programme de la formation

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 ? Swift ?

L'environnement de développement

  • Le vertige des chiffres liés aux applications
  • 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)
  • ?
  • Les pragma XCode / compilateurs ObjC
  • de projet XCode
  • Le simulateur iPhone Où trouver de l'aide ?

Le langage Swift

  • Présentation générale et vocabulaire
  • Etat de l’art Swift
  • Pourquoi Swift et non Objective C ?
  • Comparatif langages orientés objet PHP, C++ et Java
  • Syntaxe
  • Déclarations
  • Inférence de types
  • Appels de fonctions
  • Struts / Enum
  • Generics
  • Collections
  • Optionals
  • Contrôle d’exécution
  • Closures
  • Gestion de la mémorie avec ARC

La programmation objet avec Swift

  • Classes
  • Constructeurs
  • Catégories et extensions
  • Les propriétés déclarées (@property)
  • Méthodes
  • Destructeurs

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
  • dates, times et numbers (NSDate)
  • Interfacer son application avec les réglages utilisateurs standards système

L'interface utilisateur pour vos applications iPhones

  • Framework: Cocoa Touch Layer
  • Les apports du framework UIKit
  • Comprendre l'intérêt du modèle MVC (Model View Controller)
  • 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
  • Les bases de Core Animation
  • Le système de coordonnées des Views
  • Hiérarchies des classes UIResponder / UIWindow / UIView
  • et des contrôleurs de navigation
  • Exemple UIView / UIImageView
  • Appliquer une transition à une View dans un bloc d'animation

iCloud, une nouvelle philosophie pour le développement

  • 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

Compléments

  • Nouvelle gestion de la géolocalisation, notification locales associées
  • Intégration des réseaux sociaux à tous les niveaux du système
  • en Wifi (Airplay, Apple TV)
  • La reconnaissance faciale (principes et exemples d'utilisation)
  • Exemple d'identification via une webcam

Professionnaliser son application

  • 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 ?
  • Les grandes lignes de la publication sur iTunes AppStore

Présentation des nouveautés iOS8

  • Xcode 6 "plus de fonctions d'optimisation et de contrôle du code"
  • Applications pour la future Watch
  • Passage en revue des principales améliorations
  • Migrer une application iOS7 en iOS8

Les + de cette formation

Une formation très concrète : 70% du temps de la formation est consacré aux travaux pratiques et 30% à la théorie.
De nombreux retours d'expériences de consultants-formateurs spécialistes du développement d'applications pour la mobilité.