Développement Mobile Natif 2 (iOS) GIN5L03
Enseignant:
Email:
Durée totale du cours: 45 H
Semestre : 5
Option Ingénierie systèmes et réseaux
Nombre de crédits : 2
| Modules
spécialisés |
Modules de
base |
Sciences et techniques de
l’ingénierie |
Préparation à la carrière professionnelle |
| X |
| Nombre d’heures | Activités hors classe | ||
| 22.5 | 18 | ||
| cours | TD | TP | |
| 22.5 | |||
Code : GIN5L03 Développement Mobile Natif 2 (iOS)
Volume Horaire : 03h Travaux pratiques (par semaine)
Objectifs d’apprentissage et compétences visées
L’étudiant doit être capable de :
- Utiliser l’IDE xCode
- Développer un algorithme en swift en utilisant le xCode Playground
- Connaître l’architecture d’un projet xCode d’une application iOS
- Connaître le cycle de vie d’une application iOS (AppDelegate.swift)
- Connaître le cycle de vie d’une Interface (UIViewController.swift)
- Développer une interface graphique avec le Interface-Builder
- Implémenter le UINavigationController
- Utiliser le Framework CoreData
- Consommer des API REST
- Utiliser le MapKit
Contenu
- Initiation Swift avec Playground :
- Déclaration des variables
- Déclaration des constantes
- Les Collections : Array/Dictionary
- Les structures conditionnelles : if/switch
- Les loop : for/while
- Déclaration des classes
- Création d’une application Hello World
- Création d’un .xcodeproj
- Voir les différents types des fichiers: .swift/.plist/.storyboard
- Voir le cycle de vie d’une application et d’une interface
- UIKit/Interface Builder
- Création d’une interface via l’Interface Builder
- Liaison entre le code swift et Interface Builder : IBAction/IBOutlet
- Développement d’une interface de login
- Navigation
- Intégration d’un UINavigationController
- Navigation entre deux viewControllers
- Customisation de la navigationBar
- Passage des variables entre deux viewControllers
- UITableView
- Création d’un UITableView
- Implémentation du protocol UITableViewDataSource avec la cellule par défaut
- Implémentation du protocol UITableViewDelegate
- Création d’un custom cell en utilisant un xib
- CoreData
- Création d’un .xcdatamodel
- Création d’une entitée User
- Faire une interface pour la création d’un User
- Afficher la liste des users dans d’un UITableView
- Modification/Suppression d’un user
- Création d’une entitée Contact et faire une relation entre les deux entitée
- Afficher la liste des Contact d’un User
- Consommation des API REST
- Création d’une classe qui implémente le protocol Decodable
- Invocation WS en utilisant l’URL Session
- Parsing JSON avec JSONDecoder
- Application de test: NearRestoApp
- MapKit
- Intégration MapKit
- Ajouter un Marker dans une map
- Intégration du map dans l’application NearRestoApp
Méthodes d’enseignement et d’apprentissage
- Travaux pratiques (laboratoire)
Connaissances et compétences pré-requises
- Programmation orienté objet
- JAVA / Android SDK
- MVC
Références bibliographiques
- Ambroise Collon, Introduction à iOS : plongez dans le développement mobile !, https://openclassrooms.com/fr/courses/4206426-introduction-a-ios-plongez-dans-le-developpement- mobile
Modalité d’évaluation
- 100% Travaux pratiques (Examen TP)
Résultat d’apprentissage :
À la fin du cours, vous devriez être capable de :
- Décrire la faisabilité et les défis techniques de la création d’applications iOS à l’aide d’UIKit et des technologies associées ;
- Analyser les directives d’interface mobile et les contraintes techniques pour concevoir des interfaces de navigation et d’utilisateur efficaces pour les applications mobiles ;
- Appliquer des modèles de conception orientés objet courants tels que Modèle-Vue-Contrôleur et Délégation ;
- Suivre les meilleures pratiques iOS pour concevoir, construire et tester des applications iOS non triviales avec un composant de service Web.