1. Livres et vidéos
  2. Swift 3 pour iPhone - Développez vos premières applications mobiles

Swift 3 pour iPhone Développez vos premières applications mobiles

  • Accès illimité 24h/24, 7J/7
  • Tous les livres en ligne, les vidéos et les cours enregistrés ENI
  • Plus de 10 nouveautés livres et vidéos chaque mois
  • Les nouveautés disponibles le jour de leur sortie
  • Accès 100% en ligne
  • En stock
  • Expédié en 24h00
  • Livraison à partir de 0,01 €
  • Version en ligne offerte pendant 1 an
  • 1 h d'accès gratuit à tous nos livres et vidéos pour chaque commande
  • Accessible immédiatement
  • Version HTML
  • Accès illimité 24h/24, 7J/7

Présentation

Ce livre sur Swift 3 s'adresse aux développeurs souhaitant se lancer dans le développement d'applications iPhone (sous iOS 10). Des connaissances sur la programmation orientée objet, même sur un autre langage, sont un prérequis nécessaire pour tirer le meilleur parti de ce livre. Tout au long des chapitres, au-delà de la présentation des outils et des frameworks, l'auteur propose des étapes de mise en pratique permettant d'appliquer les apports théoriques développés.

Les premiers chapitres présentent les grandes lignes du développement iPhone et du langage Swift. En s'appuyant sur les frameworks fréquemment utilisés, l'auteur détaille ensuite différentes fonctionnalités mises en place : l'affichage et la modification de listes d'éléments, les différents outils de navigation, l'animation des éléments à l'écran, etc.

Les chapitres qui suivent traitent de techniques plus avancées comme l'utilisation de la géolocalisation et des plans, l'accès aux images de la photothèque et de l'appareil photo, la communication avec des services web, l'interprétation de gestes et le dessin de vues personnalisées sans oublier bien sûr les outils de débogage d'une application.

Enfin, les étapes nécessaires au développement sur un appareil physique ainsi que les différents modes de déploiement d'une application, comme sur l'App Store, sont détaillés.

Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.


Les chapitres du livre :
Introduction – Une application iOS – Le langage Swift – Contrôles textuels et délégation – Combinaison de vues – Animations – Liste d'éléments – Stockage d'informations – Édition d'une liste d'éléments – Géolocalisation et plans – Caméra et photos – Accès aux services web – Gestes et dessin – Débogage – Installation sur un appareil et déploiement – Le mot de la fin

Table des matières

  • Avant-propos
    • 1. Prérequis
    • 2. À qui s'adresse cet ouvrage ?
    • 3. Méthode d'enseignement
    • 4. Matériel et logiciel nécessaires
    • 5. Utilisation du contenu téléchargeable
    • 6. État de Swift
  • Une application iOS
    • 1. Introduction
    • 2. Modèle-Vue-Contrôleur
    • 3. Application Cliqueur
      • 3.1 Présentation
      • 3.2 Contexte client
    • 4. Création d'un projet d'application
    • 5. Interface d'Xcode
      • 5.1 Barre d'outils
      • 5.2 Éditeur
        • 5.2.1 Barre de saut
        • 5.2.2 Raccourcis-clavier utiles
      • 5.3 Navigateur
      • 5.4 Utilitaires
      • 5.5 Zone de débogage
      • 5.6 Aide et documentation
    • 6. Éléments du modèle d'application
      • 6.1 Réglages du projet
      • 6.2 Autres éléments du modèle
    • 7. Premier lancement dans le simulateur
    • 8. Création de l'interface
      • 8.1 Mise en place
      • 8.2 Personnalisation
    • 9. Interaction entre la vue et le code
      • 9.1 Ouverture de l'éditeur assistant
      • 9.2 Création d'une Prise
      • 9.3 Création d'une Action
      • 9.4 Déconnexion et reconnexion
    • 10. Implémentation du View Controller
      • 10.1 Modélisation du compte actuel
      • 10.2 Définition de l'état initial
      • 10.3 Réaction aux actions
    • 11. En résumé
    • 12. Pour aller plus loin
  • Le langage Swift
    • 1. Introduction
    • 2. Création d’un Playground
    • 3. Variables
    • 4. Types
    • 5. Inférence de type et déclaration explicite
    • 6. Collections
      • 6.1 Tableaux
      • 6.2 Dictionnaires
      • 6.3 Ensembles
    • 7. Constructeurs
    • 8. Propriétés et méthodes d’instance
      • 8.1 Propriétés
      • 8.2 Méthodes d’instance
    • 9. Valeurs optionnelles
    • 10. Boucles et conditions
    • 11. Contrôle d'accès
      • 11.1 Module et fichier
      • 11.2 Modificateurs d'accès
      • 11.3 La différence entre public et open
    • 12. En résumé
  • Contrôles textuels et délégation
    • 1. Introduction
    • 2. L'application Décodeur
      • 2.1 Présentation
      • 2.2 Contexte client
    • 3. Création de l'interface
    • 4. Bases d'Auto Layout
      • 4.1 Hiérarchie des vues
      • 4.2 Attributs et contraintes
      • 4.3 Positionnement du titre
      • 4.4 Positionnement du champ texte et du libellé
      • 4.5 Modifier une contrainte existante
    • 5. Écriture de fonctions
      • 5.1 Signature d'une fonction
      • 5.2 Nom des paramètres et code expressif
      • 5.3 Implémentation de la méthode décoder(message:)
    • 6. Implémentation du View Controller
      • 6.1 Branchement des Prises et des Actions
      • 6.2 Implémentation des méthodes
    • 7. Délégation
      • 7.1 Présentation
      • 7.2 Protocole
      • 7.3 Utilisation de la délégation
      • 7.4 Connexion du délégué
      • 7.5 Empêcher certains changements
    • 8. Affichage d'une alerte
      • 8.1 Ajout de constantes
      • 8.2 Implémentation de la méthode
    • 9. En résumé
    • 10. Pour aller plus loin
  • Combinaison de vues
    • 1. Introduction
    • 2. Contrôles de navigation
      • 2.1 Tab Bar Controller
      • 2.2 Navigation Controller
    • 3. L'application Visiteur
      • 3.1 Présentation
      • 3.2 Contexte client
    • 4. Création d'un Tab Bar Controller
      • 4.1 View Controller Initial
      • 4.2 Propriétés des onglets
    • 5. Insertion d'une scène existante
      • 5.1 Insertion du ViewController
      • 5.2 Insertion de la Scène
      • 5.3 Segues de relation
      • 5.4 Masquage du clavier
    • 6. Mise en forme avec Scroll View et Stack View
      • 6.1 Scroll View
      • 6.2 Stack View
      • 6.3 Mise en forme
    • 7. Ajout d'une vue modale de connexion
      • 7.1 Segue de navigation
    • 8. Segue de débobinage
      • 8.1 Mise en place du Segue de retour vers l'écran Visiteur
    • 9. Passage d'informations lors du débobinage
    • 10. Modification de la vue Visiteur
      • 10.1 Affichage de l'e-mail dans un libellé
      • 10.2 Ajout du bouton Déconnexion
      • 10.3 Factorisation à l'aide d'un Observateur de Propriété
    • 11. En résumé
    • 12. Pour aller plus loin
  • Animations
    • 1. Introduction
    • 2. Closures
      • 2.1 Présentation
      • 2.2 Simplification de la syntaxe
      • 2.3 Capture
    • 3. Généralités sur les animations
      • 3.1 Animation de propriété
      • 3.2 La fonction animate
      • 3.3 Courbe d'animation
    • 4. Disparition d'un élément
    • 5. Contraintes, cadre et transformation
      • 5.1 Changement de la position d'un élément
      • 5.2 Contraintes
      • 5.3 Cadre
      • 5.4 Transformations
      • 5.5 Choix de la méthode d'animation
    • 6. Animation des coordonnées du cadre
    • 7. Animation de contraintes
    • 8. Animation de la transformation
    • 9. En résumé
  • Liste d'éléments
    • 1. Introduction
    • 2. Contrôle de liste avec Table View
      • 2.1 Table View
        • 2.1.1 Relation avec le délégué et la source de données
        • 2.1.2 IndexPath
        • 2.1.3 Table View Controller
      • 2.2 Cellules
        • 2.2.1 Composition
        • 2.2.2 Accessoires
        • 2.2.3 Styles de cellules
        • 2.2.4 Performances et réutilisation des cellules
      • 2.3 Sections
    • 3. L'application Agenda
      • 3.1 Présentation
      • 3.2 Contexte client
    • 4. Réalisation de la liste d'éléments
      • 4.1 Création du projet
      • 4.2 Configuration de la cellule
      • 4.3 Création de la classe Table View Controller
      • 4.4 Premier test de la source de données
    • 5. Types Valeur : structure et énumération
      • 5.1 Types valeur et types référence
        • 5.1.1 Copie à l'assignation
        • 5.1.2 Immutabilité
      • 5.2 Structure
      • 5.3 Énumération
    • 6. Création d'objets modèle
      • 6.1 La structure Événement
      • 6.2 Propriétés et méthodes statiques
        • 6.2.1 Explication
        • 6.2.2 Tous les Evénements
      • 6.3 Propriétés calculées et accesseurs
        • 6.3.1 Explication
        • 6.3.2 Nom des salles
      • 6.4 Utilisation dans le Table View Controller
    • 7. Navigation Master-Detail avec Navigation Controller
      • 7.1 Navigation Controller
      • 7.2 Principe de fonctionnement
      • 7.3 Barre de navigation et Navigation Item
      • 7.4 Barre d'outils
      • 7.5 Combinaison avec le Tab Bar Controller
    • 8. Ajout de l'écran de détails
      • 8.1 Mise en place du Navigation Controller
      • 8.2 Ajout du Segue de navigation
      • 8.3 Conception de l'écran de détails
      • 8.4 Injection de l'événement
    • 9. Personnalisation
      • 9.1 Création d'un modèle de cellule personnalisée
      • 9.2 Personnalisation de la couleur globale
    • 10. En résumé
    • 11. Pour aller plus loin
  • Stockage d'informations
    • 1. Introduction
    • 2. Gestion des erreurs en Swift
      • 2.1 Présentation
      • 2.2 Cas d'exemple
      • 2.3 Émission d'erreurs
      • 2.4 Gestion de l'erreur avec catch
      • 2.5 Essai conditionnel avec try ?
      • 2.6 Essai risqué avec try!
      • 2.7 Remonter l'erreur avec throws
    • 3. Le bac à sable de l'application
      • 3.1 Concept
      • 3.2 Bundle Container
      • 3.3 Data Container
    • 4. Accès aux fichiers
      • 4.1 Ressources du Bundle
      • 4.2 Images du bundle
      • 4.3 Ressources dans le Data Container
      • 4.4 Document
    • 5. Manipulation de données
      • 5.1 Data
        • 5.1.1 Lecture et écriture
        • 5.1.2 Changement en chaîne de caractères
        • 5.1.3 Changement en image
      • 5.2 Encodage et décodage
      • 5.3 Archivage
    • 6. Réglages utilisateur
      • 6.1 Principe
      • 6.2 UserDefaults
      • 6.3 Trousseau d'accès
    • 7. En résumé
  • Édition d'une liste d'éléments
    • 1. Introduction
    • 2. Animation de changements sur la liste
      • 2.1 Rechargement simple
      • 2.2 Modification des lignes
        • 2.2.1 Principe
        • 2.2.2 Rafraîchissement, suppression et insertion
        • 2.2.3 Déplacement
      • 2.3 Modification de sections
      • 2.4 Changements en simultané
    • 3. Réaction aux modifications de l'utilisateur
      • 3.1 Interactions
      • 3.2 Mode édition
      • 3.3 Suppression d'une ligne
      • 3.4 Déplacement d'une ligne
      • 3.5 Suppression sans mode édition
    • 4. L'application Notes
    • 5. Préparation de l'application
    • 6. Ajout du modèle de note
      • 6.1 Code source
      • 6.2 Énumération Couleur
        • 6.2.1 Type Imbriqué
        • 6.2.2 Énumération avec valeur brute
        • 6.2.3 Propriété d'énumération
      • 6.3 Valeurs par défaut
      • 6.4 Propriétés
      • 6.5 Déduction du titre
    • 7. Liste de notes
      • 7.1 Valeurs par défaut
      • 7.2 Propriétés
      • 7.3 Cycle de vie
      • 7.4 Archivage, sauvegarde et chargement
        • 7.4.1 Méthodes
        • 7.4.2 Transformation de tableaux avec map et flatMap
        • 7.4.3 Sauvegarde et chargement
      • 7.5 Manipulation des notes, actions et méthodes de source de données
    • 8. Implémentation de la délégation
      • 8.1 Présentation
      • 8.2 Principe
      • 8.3 Références faibles et cycle de rétention
        • 8.3.1 Gestion de la mémoire et ARC
        • 8.3.2 Cycle de rétention et fuite mémoire
        • 8.3.3 Références faibles
        • 8.3.4 Convention pour la Délégation
    • 9. Édition d'une note
      • 9.1 Délégation
      • 9.2 Le View Controller d'édition de note
        • 9.2.1 Propriétés
        • 9.2.2 Cycle de vie
        • 9.2.3 Manipulation de la vue
      • 9.3 Modification de la liste
    • 10. En résumé
    • 11. Pour aller plus loin
  • Géolocalisation et plans
    • 1. Introduction
    • 2. Extensions
      • 2.1 Retour sur l'héritage
      • 2.2 Extension de types
      • 2.3 Extension de protocole
    • 3. Géolocalisation avec Core Location
      • 3.1 Présentation
      • 3.2 Position géographique avec CLLocation
      • 3.3 Géolocalisation avec CLLocationManager
        • 3.3.1 Présentation
      • 3.4 Disponibilité de la géolocalisation
      • 3.5 Demande de géolocalisation
      • 3.6 Impacts sur l'autonomie
    • 4. Plans avec MapKit
      • 4.1 Présentation
      • 4.2 Présentation d'un plan
      • 4.3 Affichage d'annotations
        • 4.3.1 MKAnnotation
      • 4.4 MKAnnotationView et délégation
    • 5. L'application 7 Merveilles
    • 6. Création du projet
      • 6.1 Ajout des frameworks MapKit et CoreLocation
      • 6.2 Ajout du texte de justification
      • 6.3 Mise en place de l'interface
    • 7. Demande de l'autorisation de géolocalisation
    • 8. Ajout du modèle Merveille
    • 9. Création du plan
    • 10. Simulateur, plans et géolocalisation
      • 10.1 Pincer et zoomer sur le simulateur
      • 10.2 Géolocalisation sur le simulateur
    • 11. Création de la liste
    • 12. Affichage de la page associée
      • 12.1 UIWebView et SFSafariViewController
      • 12.2 Extension de UIViewController
    • 13. En résumé
    • 14. Pour aller plus loin
  • Caméra et photos
    • 1. Introduction
    • 2. Récupération de photo avec UIImagePickerController
      • 2.1 Présentation
      • 2.2 Autorisations
      • 2.3 Présentation du récupérateur d'images
      • 2.4 Disponibilité des sources de capture
      • 2.5 Délégation
    • 3. Exécution asynchrone et en parallèle
      • 3.1 Principe
      • 3.2 File d'acheminement
      • 3.3 Exécution en file
    • 4. Traitement des images
      • 4.1 Présentation
      • 4.2 Redimensionnement d'image
      • 4.3 Exécution sur une file d'acheminement
    • 5. En résumé
  • Accès aux services web
    • 1. Introduction
    • 2. Gestion de tâches réseau avec URLSession
      • 2.1 Principe
      • 2.2 Création de la session
      • 2.3 Création de requête
      • 2.4 Types de tâches
      • 2.5 Création d'une tâche avec closure
      • 2.6 Démarrer et interrompre une tâche
      • 2.7 Utilisation de la délégation
      • 2.8 Sécurité et App Transport Security
    • 3. Exploitation de données JSON
      • 3.1 Principe
      • 3.2 Format JSON
      • 3.3 Interprétation de JSON
      • 3.4 Sérialisation en JSON
    • 4. En résumé
  • Gestes et dessin
    • 1. Introduction
    • 2. Réaction au toucher avec UIResponder
      • 2.1 Présentation
      • 2.2 UITouch
      • 2.3 La chaîne de réponse
    • 3. Dessin d'une vue personnalisée
      • 3.1 Présentation
      • 3.2 Méthode draw
      • 3.3 Dessin dans un CGContext
    • 4. Réaction aux gestes avec UIGestureRecognizer
      • 4.1 Présentation
      • 4.2 UIGestureRecognizer
      • 4.3 Action
      • 4.4 Dépendances
      • 4.5 Délégation
    • 5. Définition d'un View Controller en code
      • 5.1 Présentation
      • 5.2 Méthode loadView()
      • 5.3 Ajout d'une sous-vue
      • 5.4 Positionnement avec un masque de redimensionnement
      • 5.5 Positionnement en Auto Layout
    • 6. En résumé
  • Débogage
    • 1. Introduction
    • 2. Points d'arrêt et pas-à-pas
      • 2.1 Présentation
      • 2.2 Mise en place d'un point d'arrêt
      • 2.3 Exécution avec un point d'arrêt
      • 2.4 Mise en pause
    • 3. Suivi des jauges
    • 4. Débogage de la hiérarchie des vues
    • 5. En résumé
  • Installation sur un appareil et déploiement
    • 1. Introduction
    • 2. Prérequis
    • 3. Signature de code et profil d'approvisionnement
      • 3.1 Principe
      • 3.2 Environnements
        • 3.2.1 Développement
        • 3.2.2 Déploiement ad hoc
        • 3.2.3 Déploiement App Store
      • 3.3 Déploiement Entreprise
    • 4. Xcode et signature du code
      • 4.1 Ajout d'un compte à Xcode
      • 4.2 Génération des certificats
      • 4.3 Définition de l'identité de signature pour une application
      • 4.4 Lancement en débogage sur un appareil
      • 4.5 Création d'une archive pour déploiement
    • 5. En résumé
  • Le mot de la fin
    • Index

Auteur

Pascal BATTYEn savoir plus

Ingénieur logiciel depuis 2005, Pascal Batty commence à développer des applications pour iPhone en 2010. Depuis, il s'est spécialisé dans ce domaine et intervient sur des projets de développement dans des contextes très variés. Il a toujours aimé les multiples facettes du développement informatique et s'intéresse tout naturellement au langage Swift dès son annonce en 2014. Par ses publications, il choisit de transmettre tout son savoir-faire et toute sa passion pour le développement d'applications mobiles pour iPhone avec le langage Swift.

Caractéristiques

  • Niveau Confirmé à Expert
  • Nombre de pages 424 pages
  • Parution juin 2017
    • Livre (broché) - 17 x 21 cm
    • ISBN : 978-2-409-00631-9
    • EAN : 9782409006319
    • Ref. ENI : EI3SWI
  • Niveau Confirmé à Expert
  • Parution juin 2017
    • HTML
    • ISBN : 978-2-409-00914-3
    • EAN : 9782409009143
    • Ref. ENI : LNEI3SWI

Téléchargements

En complétant ce formulaire, vous acceptez d'être contacté afin de recevoir des informations sur nos produits et services ainsi que nos communications marketing. Vous aurez la possibilité de vous désabonner de nos communications à tout moment. Pour plus d'informations sur notre politique de protection des données, cliquez ici.
  • Des fichiers complémentaires (495 Ko)
  • Webographie