BINV2110 - Informatique mobile

A propos du cours

Cours de mobile 2026

Matière

L'objectif de ce cours est de vous faire découvrir un volet jusqu'ici peu évoqué du développement: le développement d'application mobile natives.

Bien que des applications web peuvent fonctionner sur téléphones ou tablettes (et même être conçues prioritairement pour des petits écrans), un ensemble de fonctionnalités spécifiques sont impossibles à réaliser en web - typiquement l'utilisation hors ligne mais aussi la gestion de certains capteurs (gyroscopes ou GPS par exemple).

Pourquoi Flutter ?

Le monde mobile se divise principalement en deux:

  • Applications iOS / iPhone: Ecrites en Objective C ou en Swift
  • Applications Android: Ecrites en Java ou en Kotlin

De plus, bien qu'offrant des capacités similaire, Android et iOS ont chacuns leurs spécificités.

Ceci implique pour la plupart des société de faire littéralement le développement deux fois, les stack techniques étant complétement différents. Bien que la solution la plus qualitative pour l'utilisateur final, c'est aussi de loin la plus couteuse.

Une alternative est ce qu'on appelle le développement "hybride" dans lequel une seule technologie est utilisée pour la programmation qui est ensuite convertie pour les deux plateforme.

Dans cette catégorie se trouvent principalement deux technologies:

  • Flutter: Crée par Google, développement en Dart
  • React Native: Crée par Facebook, développement en TypeScript

Les approches des deux frameworks sont assez différentes - nous avons décidé d'utiliser Flutter dans le cadre de ce cours.

Séances

Le cours se compose de 8 séances de 4 heures (donc 2x2 heures par semaine), plus une semaine consacrée à un examen blanc. Chaque séance fera l'objet d'un projet distinct mais se basant sur les acquis de la précédente.

Evaluation

L'évaluation du cours est en deux partie

  • Une évaluation continue durant les 7 premières séances comptant pour 20% des points
  • Un examen pratique comptant pour 80% des points

Evaluation continue

Vous allez en début de cours forker un repository crée par les professeurs. Durant chaque fiche, il vous sera demandé de créer un nouveau répertoire avec le projet de la semaine dans ce repository. Un ensemble de tests automatiques à été mis en place pour chaque fiche pour valider le bon fonctionnement de votre code et le respect des instructions fournies. Ces tests fourniront la base de l'évaluation continue sous forme d'un score pour chaque séance. Les scores seront ensuite additionné et

Soyez dès lors très attentifs au bon respect des instructions.

Les tests et l'évaluation seront faite pour chaque fiche basé sur l'état de votre repository le vendredi suivant la semaine de la fiche. Nous nous baserons sur les dates de commits pour ceci.

Cette partie de l'évaluation est finale et ne peut pas être représentée en seconde session.

Examen

L'examen est un examen pratique d'une durée de 2h. Il vous sera demandé de coder une application mobile en flutter sans usage d'internet ou de l'IA. Un examen blanc vous permettra de vous évaluer.