DiscoverProgrammation sur plateforme mobile : application à iOS
Programmation sur plateforme mobile : application à iOS
Claim Ownership

Programmation sur plateforme mobile : application à iOS

Author: Fabrice Kordon, Silien Hong

Subscribed: 40Played: 36
Share

Description

Cette série de 7 cours est consacrée à la programmation sur plateformes mobiles. Elle se focalise principalement sur iOS et montre également la correspondance des principes vus pour iOS sur Android. Des étudiants de M2 constituent le public visé par ces cours. On considère qu'ils sont déjà compétent en programmation et qu'ils ont des notions sur l'utilisation de langages objets, de langages procéduraux, ainsi que des principes de base en système d'exploitation (interruption, notion d'événement, etc.). Les cours abordent successivement les principaux mécanismes offerts par iOS pour le développement d'applications embarquées sur des terminaux mobiles de type "smartphone": l'environnement de développement, la notion de vue, les principaux frameworks, etc. Un parallèle avec la problématique du développement de systèmes embarqués est également fait. A l'issue de ces cours, les étudiants sont autonomes et capables de naviguer non seulement dans l'environnement de développement d'Apple, mais aussi dans des environnements similaires.
7 Episodes
Reverse
Ce septième et dernier cours vous présente les bibliothèques de développement pour le système Android de Google comparativement aux mécanismes vu sous iOS. Dans un premier temps, vous voyez comment créer et déployer une première application sur un simulateur ou votre téléphone mobile. Ensuite, sont abordés dans l'ordre: la création d'écrans graphiques grâce aux Activity et l'utilisation du plugin eclipse ADT ; le «INTENT bus» de communication pour dialoguer avec des applications existantes (par exemple, la galerie ou le navigateur) ; l'exploitation des mécanismes de «touch» et «multi-touch» et des différents capteurs du téléphone ; et enfin, différents moyens pour assurer persistance des données de vos applications (préférences, SGF, SQLite).
Ce cinquième cours présente dans un premier temps différents mécanismes innovants pour s'interfacer avec l'utilisateur : l'accéléromètre, la gestion des « secousses » (shake motion) et la gestion des points de contact (touch/multi touch) avec la surface du terminal. I présente ensuite les principaux mécanismes de gestion du son, que ce soit depuis des fichiers ou depuis la bibliothèque de musique embarquée à bord du terminal.
Ce sixième cours présente deux points importants pour les applications sur terminaux mobiles. Le premier d'entre eux est l'accès au réseau. Sont évoqués l'invocation d'un service, le décodage du résultat rendu par des services web au format XML et la gestion de communication 0-configuration au moyen du protocole Bonjour. Le second point concerne la gestion de la persistance des données au moyens, soit du système de préférence proposé par iOS, soit de la sauvegarde par sérialisation/dé-sérialisation d'objets dans un fichier.
Ce troisième cours se focalise principalement sur le mécanisme de délégation qui met en ¦uvre la notion de framework dans l'environnement iOS. Cette notion est illustrée par la présentation de plusieurs mécanismes l'utilisant: la géolocalisation, (CLLocation et MapKit), la gestion de l'appareil photo ou, à défaut, de la bibliothèque d'images (UIImagePicker) et la gestion du carnet d'adresse (PersonViewController et PeoplePicker). Une première définition des contrôleurs de vues est également présentée avec comme objectif de gérer les différentes orientations possibles d'un terminal.
Ce quatrième cours expose les mécanismes de présentation sophistiqués permettant de gérer et organiser un grand nombre de vues pour construire des applications complexes. Les trois principaux mécanismes (et leur associations possibles) sont présentés: les TableViewController, les NavigationController et les TabBarController.
Ce cours introductif pose les bases de la programmation sur plateforme mobile. Après un rappel des principes de la programmation événementielle, il présente l'environnement de développement (xCode v4) et ses différents outils. Il expose ensuite les principes de base du langage objective C et présente une démonstration du développement d'une application simple en illustration du processus de réalisation d'une application. Il présente enfin un exercice simple à réaliser et donne quelques éléments pour sa solution.
Ce deuxième cours revient dans un premier temps sur Objective C. Après une présentation de la gestion des classes dans ce langage, il s'attache à présenter les mécanismes de gestion de la mémoire qui s'appuie sur des mécanismes classiques en programmation embarquée. Dans un second temps, la notion de vue, cruciale pour la construction d'interfaces graphiques sans utiliser Interface Builder est évoquée. Le cours se termine par une présentation de UIKit (contenant des mécanismes pour gérer boutons, sliders, segmented-control, etc.) ainsi qu'une rapide présentation de la gestion du scrolling/zooming.