Programmation mobile
Cursus master ingénierie (CMI) - UFR de mathématique et d'informatiqueParcours Cursus master ingénierie (CMI) - Informatique, systèmes et réseaux

Description

Cette matière est dédiée au développement d’applications mobiles (Android ou iOS) en insistant sur les bonnes pratiques de programmation.  

Contenu du cours :
- Introduction au framework Android à partir de l’IDE Android Studio (en Java et Kotlin)
- Structure d’un projet Android (arborescence, notion de Manifest, système de build gradle)
- Classes fondamentales du framework (Activity, Intent, Fragment, FragmentManager, Layout, …)
- Notion de ViewModel, RecyclerView, ViewHolder, Adapter, Designs patterns dédiés à la programmation mobile (MVC, MVVM) 
- Gestion des threads et des évènements sous Android Requêtes asynchrones (Volley, JSonObject Request, etc..)
- Gestion de la persistance (Bundle, SharedPreferences, accès au système de fichiers, BDD SQLite) Gestion des capteurs  

Compétences requises

  • Algorithmique et programmation 1 & 2

  • Programmation orientée objets 1

  • Programmation web 1 & 2

Compétences visées

À l’issue de cet enseignement, les étudiants seront capables de :

  • Savoir développer une application cliente pour terminal mobile (Android, iOS, ...)

  • Maîtriser un langage de programmation pour le développement mobile, tel que Java, Kotlin (pour Android) ou Swift (pour iOS).

  • Maîtriser les spécificités de la programmation mobile (Android, iOS, ...)

  • Utiliser un environnement de développement intégré (IDE) dédié au développement mobile, comme Android Studio (pour Android) ou Xcode (pour iOS).

  • Suivre les bonnes pratiques spécifiques au développement mobile (utilisation de modèles de conception, organisation du code,  documentation, contrôle de version)

  • Interagir avec des services Web pour récupérer et envoyer des données depuis une application mobile

  • Gérer efficacement les données en s'appuyant sur les bases de données locales (SQLite)

  • Intégrer des fonctionnalités matérielles spécifiques d'un terminal mobile, telles que la caméra, le GPS et les capteurs.

Modalités d'organisation et de suivi

enseignement optionnel au choix : 1 parmi 3

Disciplines

  • Informatique

Syllabus

Introduction au framework Android à partir de l’IDE Android Studio (en Java et Kotlin)

Structure d’un projet Android (arborescence, notion de Manifest, système de build gradle)

Classes fondamentales du framework (Activity, Intent, Fragment, FragmentManager, Layout, ...)

Notion de ViewModel, RecyclerView, ViewHolder, Adapter,

Designs patterns dédiés à la programmation mobile (MVC, MVVM)

Gestion des threads et des évènements sous Android

Requêtes asynchrones (Volley, JSonObject Request, etc..)

Gestion de la persistance (Bundle, SharedPreferences, accès au système de fichiers, BDD SQLite)

Gestion des capteurs 

Bibliographie

Documentation officielle de l’API Android : https://developer.android.com/

Contacts

Responsable(s) de l'enseignement