Master informatique
Interface Homme Machine (IHM)
Code apogéeDINF7IHMStructurexxDernière mise à jour le19 Septembre 2018
Responsable pédagogiqueBOUNCEUR Ahcène (Maître de conférences, 27ème section)
Parcours
  • Master 1 2017-2022
TypeObligatoire
Semestre7Volume horaire48Crédits ECTS4
Nombre d'heures Cours magistraux (CM)16 Travaux dirigés (TD)16 Travaux pratiques (TP)16 
Pré-requis Java
Co-requis 
Objectif Terminal

Cette UE permet d'introduire les concepts de base de la programmation des interfaces graphiques évoluées et avancées sous les environnements Java et Android. L'objectif est de pouvoir développer des interfaces de qualité respectant la norme MVC (Model-View-Controller) ainsi que les outils existant permettant de mettre en place ce type de modèles.


La partie Java est focalisée sur la présentation de l'environnement Java FX. Le développement d'interfaces graphiques pour les applications en Java bénéficie depuis la version 8 de la librairie Java FX et ce de manière native. Après un bref historique (awt, swing) et une comparaison avec d'autres librairies (gwt, swt), nous aborderons d'une part les notions principales pour coder des IHM en Java FX (sans et avec l'outils Scene Builder, en 2D ainsi qu'en 3D) et d'autre part nous mettrons en pratique nos connaissances au travers d'exemples guidés et d'un projet plus libre.


La partie Android, elle permet d’introduire les concepts de base de l’environnement de programmation mobile Android Studio et le SDK Android. Elle est composée de 4 parties. La première partie présente l’environnement de développement Android dont le système, le SDK et la plateforme Android Studio. La deuxième partie présente les concepts fondamentaux et les composants d’un projet et d’une application. Le partie 3 présente les techniques de navigation entre plusieurs activités d’une application. La dernière partie sera consacrée à la partie IHM sous Android.

Objectif Pédagogique

Permet de maîtriser les environnements suivants :

1. Scene Builder et la programmation JavaFX

2. Programmation Android (SDK et Android Studio)

3. Modélisation MVC et techniques de programmation d'interfaces graphiques ergonomiques

Contenu détaillé de l'enseignement

 - Introduction à l'API Swing de Java et aux Layouts

 - JavaFX et Scene Builder (noeuds, containers, controls, layouts, connexion entre les fichiers fxml et java)

 - Notions de Threads et de taches (Task) et leurs utilités pour les IHMs (Java/JavaFX et Android)

 - Programmation Java 2D et 3D  

 - Introduction à la programmation Android (SDK) et à l'environnement de développement Android Studio

 - Les Activités, les Intents

 - Les IHMs Android

 - Programmation de composants personnalisés (Java et Android)

Méthodes d'enseignement Cours/TD/TPs
Evaluation session 1

 Examen écrit/CC

JavaFX + Scene Builder : réalisation individuelle d'un projet original. Ce projet comportera 2 évaluations de 15 minutes (en début de TP) et 1 évaluation finale du projet terminé. Chaque évaluations de 15 minutes a un poids de 25% et l'évaluations finale de 50%.

 

Evaluation session 2 Examen écrit
Références Bibliographiques

Android : https://developer.android.com/training/index.html 

JavaFX : http://docs.oracle.com/javase/8/javase-clienttechnologies.htm

 SceneBuilder : https://www.youtube.com/watch?v=zvgWgpGZVKc