//img.uscri.be/pth/0eae5fac6a19b2d7d681833207709e9ddce7c7ad
Cet ouvrage fait partie de la bibliothèque YouScribe
Obtenez un accès à la bibliothèque pour le lire en ligne
En savoir plus

Programmation iOS 6 pour iPhone et iPad

De
378 pages
Concevoir une application native iOS6 et la publier avec succès sur l'Apple Store exige un savoir-faire en ergonomie mobile et la maîtrise de l'ensemble des contraintes spécifiques à la plate-forme iOS 6.



Cet ouvrage pour iOS B aborde le développement d'applications iPhone, iPad et iPod Touch dans tous ces aspects, depuis l'inscription chez Apple et l'achat de licence du SDK à la distribution sur l'AppStore... sans oublier les bonnes pratiques de conception et les design patterns d'interface.



Une référence pour réussir ses applications iPhone et iPad professionnelles sous iOS 6



De la conception de l'application - encadrée par de strictes règles d'ergonomie - jusqu'à son déploiement, cet ouvrage détaille les bonnes pratiques garantissant la qualité de vos développements sous iOS 6 : gestion de projet et architecture MVC, ergonomie mobile et design patterns d'interface. Les fondamentaux du développement iOS sont détaillés, de l'Objective-C et sa gestion spécifique de la mémoire avec l'ARC (Automatic Référence Counting) aux contrôleurs de vue, en passant par la mise en place des storyboards, des vues, des listes TableViews etc.



L'ouvrage traite en profondeur d'aspects fondamentaux tels que l'accès aux services web (JSON, XML), la gestion de flux audio et vidéo, la persistance avec le framework CoreData et l'utilisation du service de notifications Apple APNS. Il fournit de précieux conseils pour publier sur l'App Store et y gagner en notoriété.




  • Découverte de l'environnement de développement


    • Développer pour iPhone et iPad


    • L'essentiel d'Objective-C


    • Premiers pas avec le SDK iOS




  • Conception et ergonomie


    • Méthode de développement d'un projet iOS


    • Principes ergonomiques et design patterns d'interface


    • Conception de l'interface graphique




  • Le développement de l'interface


    • Contrôler les écrans de l'application


    • Assembler les écrans de l'application


    • Développer et animer les vues


    • Listes déroulantes et les PickerViews


    • Listes d'éléments


    • Contact et gestuelle




  • La manipulation des données


    • Lire et enregistrer des données


    • Géolocalisation avec MapKit


    • Communiquer avec l'extérieur


    • Persistance d'objets avec Core Data


    • Manipuler des données multimédias


    • Utiliser les API de notifications


    • Images, animations et graphiques




  • La publication des applications


    • Publier sur l'App Store



Voir plus Voir moins
ProgrammationiOS6 Conception et publication d’applications iPhone & iPad
J e a n  M a r c L a c o s t e T h o m a s S a r l a n d i e
Programmation i OS6 Concevoir une application native iOS 6 et la publier avec succès sur l’Apple Store exige un savoirfaire en ergonomie mobile et la maîtrise de l’ensemble des contraintes spécifiques à la plateforme iOS 6.
Cet ouvrage pour iOS 6 aborde le développement d’applications iPhone, iPad et iPod Touch dans tous ces aspects, depuis l’inscription chez Apple et l’achat de licence du SDK à la distribution sur l’AppStore… sans oublier les bonnes pratiques de conception et les design patterns d’interface.
Une référence pour réussir ses applications iPhone et iPad professionnelles sous iOS 6 De la conception de l’application – encadrée par de strictes règles d’ergonomie – jusqu’à son déploiement, cet ouvrage détaille les bonnes pratiques garantissant la qualité de vos développements sous iOS 6 : gestion de projet et architecture MVC, ergonomie mobile et design patterns d’interface. Les fondamentaux du développement iOS sont détaillés, de l’ObjectiveC et sa gestion spécifique de la mémoire avec l’ARC (Automatic Reference Counting) aux contrôleurs de vue, en passant par la mise en place des storyboards, des vues, des listes TableViews etc. L’ouvrage traite en profondeur d’aspects fondamentaux tels que l’accès aux services web (JSON, XML), la gestion de flux audio et vidéo, la persistance avec le framework CoreData et l’utilisation du service de notifications Apple APNS. Il fournit de précieux conseils pour publier sur l’App Store et y gagner en notoriété.
Au sommaire L’environnement de développementDévelopper pour iPhone/iPadMatériel requisObjectiveC et le SDK iOS  L’orientation objetProgrammation multithreadLa bibliothèque standard FoundationComptage de références et ARCXcodeLe fichier info.plistStoryboardSchémas de compilation et débogageConception et ergonomie  Méthode de développement d’un projet iOSPrincipes ergonomiques et designs patterns d’interfaceMétaphoresListes d’éléments (TableViews)Listes groupéesBarres d’outilsListes hiérarchiquesErgonomie iPad avec SplitViewControllerCollections d’objetsConception de l’interface mobileFréquence d’utilisationDéveloppement de l’interfaceContrôler les écrans de l’applicationModèle MVC dans iOSContrôleur de vueTransitions  Assembler les écrans de l’applicationContrôleursconteneursNavigation avec un storyboardOngletsMode modalAnimer les vuesHiérarchie et redimensionnement automatique (Auto Layout)Listes déroulantes : les PickerViewsDélégation de contrôleSources de donnéesListe d’élémentsTableViewsContact et gestuelleDétection de doigtsLa classe UITouch (swipe, pan, pinch…)Manipulation des donnéesLire et enregistrer les donnéesPréférences utilisateurPropriétés plistJSONGéolocalisation avec MapKitCommuniquer avec l’extérieurTraitements en arrièreplanConnexions réseau asynchronesPersistance d’objets avec l’ORM Core DataManipuler les données son et vidéosL’API de notification APNSImages, animations et graphiques avec Core Image, Core Graphics, Core Animations et OpenGLPublication sur l’AppStore.
À qui s’adresse cet ouvrage ? – Aux professionnels de la conception web et mobile qui souhaitent être présents sur le marché des services portés sur iPhone et iPad ; – À tous les particuliers et fans d’iPhone et iPad qui souhaitent concevoir, publier ou vendre une application sur l’App Store.
J.M.Lacoste JeanMarc Lacostes’est orienté vers les systèmes Unix/Linux et le C après avoir débuté dans les langages d’intelligence artificielle (Lisp, Scheme, Prolog, Ada, etc.). Consultant depuis 20 ans chez Ambre Systems, il partage son temps entre la formation en milieu professionnel et les interventions auprès des constructeurs (Digital, HP, Sun, IBM), éditeurs et leurs partenaires. À l’arrivée de la plateforme iOS, il a repris le développement sous l’angle de la formation : la prise en main du langage ObjectiveC et de l’ensemble de l’environnement de développement sous Xcode pour réaliser rapidement des applications cohérentes et efficaces.
T. Sarlandie Thomas Sarlandieest cofondateur de Backelite, l’agence mobile leader en ergonomie et développement d’applications mobiles. Il a été l’un des pionniers du développement pour iPhone en France et a souhaité partager sa passion et cette expérience à travers ce livre.
ProgrammationiOS6 Conception et publication d’applications iPhone & iPad
ColleCtion BlanChe
F.Daoust, D. hazaëlMassieux. –Relever le défi du Web mobile. Bonnes pratiques de conception et de développement. N°12828, 2011, 300 pages.
E.sarrion. –jQuery Mobile.La bibliothèque JavaScript pour le Web mobile. N°13388, 2012, 610 pages.
J.stark. –Applications iPhone avec HTML, CSS et JavaScript.Conversions en natifs avec PhoneGap. N°12745, 2010, 190 pages.
J.M.DefranCe. –Ajax, jQuery et PHP. 42 ateliers pour concevoir des applications web 2.0. N°13271, 3e édition, 2011, 482 pages.
R.Goetter. –CSS avancées.Vers HTML 5 et CSS 3. N°13405, 2e édition, 2012, 400 pages.
ColleCtionaCCèsliBre
A.faque.– Google Android 4 efficaceUtilisation avancée des smartphones Android (Samsung Galaxy, Nexus, HTC...) N° 13481, 2012, 218 pages.
propre th
T.Baillet. –Créer son pour mobile. N°13441, 2012, 128 pages.
ème WordPress
A.BouCher. –Ergonomie web illustrée.60 sites à la loupe. N°12695, 2010, 302 pages (Design & Interface).
ColleCtionDesiGnweB
C.sChillinGer. –Intégration web : les bonnes pratiques.Le guide du bon intégrateur. N°13370, 2012, 400 pages.
K.DelouMeaupriGent.CSS maintenables avec Sass & Compass.Outils et bonnes pratiques pour l’intégrateur web. N°13417, 2012, 272 pages.
OS XMountain Lion efficace Préfaces de Laurent PertoisetDavid Pogue
R.riMelé.HTML5.Une référence pour le développeur web. N°13638, à paraître en 2013, 644 pages.
E.Daspet, C. pierreDeGeyer. –PHP 5 avancé. N°13435, 6e édition, 2012, 900 pages environ.
J.pauli, G. plessis, C. pierreDeGeyer. –Audit et optimisation LAMP. N°12800, 2012, 300 pages environ.
S.JaBer. –Programmation GWT 2.5. Développer des applications HTML5/JavaScript en Java avec Google Web Toolkit. N°13478, 2e édition, 2012, 540 pages.
C.porteneuve. –Bien développer pour le Web 2.0. Bonnes pratiques Ajax. N°12391, 2e édition, 2008, 674 pages.
I.Canivet. –Bien rédiger pour le Web. Stratégie de contenu pour améliorer son référencement naturel. N°12883, 2e édition, 2011, 552 pages.
N.Chu. –Réussir un projet de site web. N°12742, 6e édition, 2010, 256 pages.
H.CoCriaMont. –Réussir son premier site Joomla! 2.5. N°13425, 2012, 160 pages.
I.CanivetetJM. harDy. –La stratégie de contenu en pratique. 30 outils passés au crible. N°13510, 2012, 176 pages.
S.DauMal. –Design d’expérience utilisateur. Principes et méthodes UX. N°13456, 2012, 208 pages.
ProgrammationiOS6 Conception et publication d’applications iPhone & iPad
J e a n  M a r c L a c o s t e T h o m a s S a r l a n d i e
A v e c l a c o n t r i b u t i o n d e G r é g o i r e P é a n
ÉDITIONS EYROLLES 61, bd SaintGermain 75240 Paris Cedex 05 www.editionseyrolles.com
Remerciements à Grégoire Péan pour sa contribution et à Anne Bougnoux pour sa relecture.
En application de la loi du 11 mars 1957, il est interdit de reproduire intégralement ou partiellement le présent ouvrage, sur quelque support que ce soit, sans l’autorisation de l’Éditeur ou du Centre Français d’exploitation du droit de copie, 20, rue des Grands Augustins, 75006 Paris. © Groupe Eyrolles, 2013, ISBN : 9782212136395
Avantpropos
Après le succès sans précédent de l’iPhone en 2007, Apple a transformé les usages en introduisant l’iPad en 2010. Notre façon d’utiliser les outils informatiques s’est ainsi rapidement modifiée ; les iPads sont présents dans notre vie quotidienne, au bureau comme à la maison, et remplacent progressivement les ultranotebooks. En permettant aux développeurs de réaliser leurs propres applications sur les appa reils et en gérant le circuit de ventes, Apple a réussi en quelques années à devenir l’une des sociétés les plus prospères de la planète, et propose un nombre sans cesse croissant d’applications sur l’ensemble de ses appareils mobiles. Apple a su réinvestir pour faire évoluer sa plateforme de développement en cher chant continuellement à simplifier le processus de développement des applications. Ces mutations rapides sont parfois déconcertantes, mais une fois maîtrisées, elles apportent une richesse fonctionnelle passionnante pour le développeur. Cette nouvelle édition du livreProgrammation iPhone OS 3 de Thomas Sarlandie présente les nouveautés et les modifications qui ont été apportées jusqu’à la version d’iOS 6.
VI
Programmation iOS 6
À qui s’adresse ce livre ? Ce livre est destiné à tous ceux qui participent à un projet iOS, aussi bien sur iPhone que sur iPad. Les développeurs y trouveront une introduction à ObjectiveC (le langage utilisé par Apple pour développer sous iOS), le SDK fourni par Apple, les outils comme Xcode et Instruments et la présentation des principaux concepts utilisés pour développer des applications. Les experts métier, les consultants marketing et les équipes créatives y trouveront une présentation des principes ergonomiques fondamentaux de la plateforme, une pro position de méthode pour concevoir une ergonomie mobile et des conseils pour pré parer la publication et le lancement de l’application.
Structure de l’ouvrage
Ce livre est construit en cinq parties conçues pour être lues dans l’ordre par un déve loppeur expérimenté découvrant la plateforme iOS et le monde Apple. Les parties 2 et 5 sont destinées à l’ensemble de l’équipe du projet et ont été écrites dans un lan gage moins technique.
Première partie : la découverte de l’environnement de développement Lechapitre 1est destiné à toute personne intéressée par le développement iOS. Il présente les différents programmes d’inscription proposés par Apple, l’inscription et le téléchargement des outils de développement et de la documentation. Le déve loppeur y trouvera également des explications pour créer un certificat de développe ment, indispensable pour tester ses applications sur un appareil. Lechapitre 2est une introduction à ObjectiveC. Destiné à des développeurs fami liers avec la programmation objet, il présente le langage utilisé par Apple de façon très pragmatique et destinée à vous rendre opérationnel rapidement. Lechapitre 3enfin, permet au développeur de de faire sa première application et de la tester dans le simulateur et sur son appareil. Les outils indispensables comme Xcode et l’usage de la documentation sont introduits à l’aide d’exemples très simples.
Avantpropos
Deuxième partie : la conception et l’ergonomie La deuxième partie du livre s’adresse à toute l’équipe en charge de l’application, les développeurs, les experts métiers, les créatifs (graphistes). La plupart des équipes sont habituées au développement d’applications web ou client lourd. Lechapitre 4 présente ainsi le cycle de développement d’un projet iOS, ses spécificités, les différentes phases et le rôle de chaque intervenant. Il permet de par tager un cadre méthodologique qui sera adapté au contexte de l’équipe en charge du projet et à ses habitudes. Lechapitre 5présente les bases de l’ergonomie iOS que toute l’équipe en charge du développement doit maîtriser. Les conventions iOS , leur logique et leur utilisation au sein des applications standard sont détaillées car il est essentiel de bien les avoir comprises pour concevoir l’interface d’une nouvelle application. C’est justement le sujet duchapitre 6qui propose une méthode permettant de partir d’une liste de fonctionnalités pour arriver à une interface utilisateur. Nous verrons comment exploiter les éléments standards pour créer une nouvelle application et comment éviter les erreurs classiques.
Troisième partie : le développement de l’interface La troisième partie est consacrée au développement de l’interface de l’application. L’élément principal constituant une application iOS est le contrôleur de vue qui est décrit en détail auchapitre 7. L’assemblage des contrôleurs de vue pour construire une application complète, dont les écrans s’enchaînent de manière fluide est détaillé dans lechapitre 8. Lechapitre 9présente les vues, c’estàdire tous les éléments d’interface, il donne les clés pour bien comprendre comment assembler un écran à partir des composants gra phiques fournis par le SDK et comment les adapter aux couleurs de votre application. Lechapitre 10, par le biais des PickerViews permet de parcourir les mécanismes de délégations qui sont présents au sein de nombreux objets en ObjectiveC. La navigation dans une liste avec le doigt est omniprésente dans les applications iPhone/iPad. Lechapitre 11détaille les nombreux éléments fournis par le SDK pour faciliter l’implémentation de listes d’éléments, appelées TableView. Enfin, auchapitre 12, on verra à quel point la détection et la gestion des actions de l’utilisateur sur l’écran – notamment les actions à plusieurs doigts (multitouch) – est facile pour le développeur sous iOS.
VII
VIII
Programmation iOS 6
Quatrième partie : la manipulation des données et la communication Cette partie présente les différentes techniques pouvant être utilisées pour enregistrer des données, ainsi que pour permettre à votre application de communiquer avec l’extérieur. La sérialisation des classes de base (listes et dictionnaires) en XML et JSON est pré sentée auchapitre 13, ainsi que l’utilisation du mécanisme de préférences utilisateur et les techniques de lecture d’un flux XML quelconque. Lechapitre 14présente le framework MapKit, qui regroupe un ensemble de classes utilisant les coordonnées de géolocalisation et manipulant des cartes. Le système s’appuie sur une cartographie développée conjointement par Apple et TomTom. Lechapitre 15comment combiner les techniques de stockage avec des montre appels réseau, et en particulier faire en sorte que l’application reste réactive même quand des appels réseau durent plusieurs secondes. Le framework CoreData est présenté dans lechapitre 16. C’est une architecture com plète de mapping objetrelationnel pour iOS et incontestablement le moyen le plus effi cace d’enregistrer et de parcourir des volumes importants de données métiers. L’utilisation de contenus multimédias est couverte auchapitre 17: lecture de sons, utilisa tion de la bibliothèque iPod de l’utilisateur, de la caméra ou encore de lectures de vidéos. Lechapitre 18présente le système de notifications permettant de rester en contact avec l’utilisateur, même lorsque l’application est fermée. La mise en place des notifi cations est présentée de manière détaillée, avec des exemples en PHP pour la partie serveur qui pourront facilement être adaptés dans n’importe quel langage. Lechapitre 19présente les frameworks fournis par Apple, permettant de manipuler les images, de produire des graphiques et d’animer les éléments présents à l’écran. Cette partie se termine par unchapitre 20, sur les fonctions graphiques de l’environ nement iOS. On dispose d’un nombre impressionnant de filtres d’images et d’anima tions faciles à mettre en place. L’API standard OpenGL ES permet de contrôler davantage le coprocesseur graphique.
Cinquième partie
: la publication des applications
La dernière partie de ce livre, en un chapitre, est consacrée à la publication de vos appli cations. Cette partie est destinée à toute l’équipe du projet qui y trouvera la liste de tous les éléments à préparer avant de pouvoir soumettre l’application à Apple, des conseils pour favoriser les chances que l’application soit validée du premier coup, et quelques outils utiles pour suivre le succès de votre application et préparer la prochaine version.