Chapitre 56 — Calculatrice
Partie 1C — Huit mini-projets · Chapitre 56 sur 62 · 12 h
Chapitre 56 — Calculatrice
Niveau : intermédiaire Durée estimée : 12 h Pré-requis : chapitres 08, 09, 13, 16 (Dart) et 45, 46, 48, 49, 51 (Flutter), plus le chapitre 55 (projet 1) Ce que vous saurez faire à la fin : écrire une application Flutter dont le cœur métier est une classe Dart pure, testée unitairement, et dont l'interface n'est qu'une couche d'affichage branchée dessus.
56.0 — Objectifs du chapitre
À la fin de ce chapitre, vous serez capable de :
- transformer un cahier des charges en automate d'états avant d'écrire la moindre ligne ;
- isoler la logique métier dans une classe Dart sans aucun
import 'package:flutter/...'; - modéliser la saisie chiffre par chiffre d'un nombre, séparateur décimal compris ;
- enchaîner des opérations comme une vraie calculatrice de poche, gérer la répétition de
=,C,CE, le signe et le pourcentage ; - lever et rattraper une exception métier (
DivisionParZeroException) ; - formater un
doublepour un affichage humain : séparateur de milliers, virgule décimale, notation scientifique ; - empêcher un texte trop long de faire déborder l'écran avec
FittedBox; - construire une grille de boutons avec
RowetExpanded, sansGridView; - écrire un widget de bouton réutilisable, paramétré par un
enumet coloré par leColorScheme; - produire un effet d'appui correct avec
Material+InkWell; - brancher la logique sur l'interface avec un unique
setState, et afficher un historique dans unListView; - accepter le clavier physique avec
KeyboardListeneretLogicalKeyboardKey; - écrire les tests unitaires de la logique, exécutables sans émulateur.
Commentaires
Les commentaires sont alimentés par GitHub Discussions
Connectez-vous avec GitHub pour participer à la discussion