OBJECTIF DE LA LEÇON
Ce que vous saurez faire
Déplacer le comportement métier dans des classes typées testables sans saisie interactive.
Garder Program petit
Program coordonne la conversation; les classes métier calculent, valident ou transforment. L’exercice reste lisible en grandissant.
final class Panier
{
/** @param list<int> $prix */
public function total(array $prix): int
{
return array_sum($prix);
}
}Employer des collections typées
Les tableaux PHP portent listes et dictionnaires. Les annotations PHPStan comme list<User> renforcent l’analyse sans inventer une syntaxe non PHP.
Tester sans saisie humaine
Injectez valeurs ou flux aux services testables. Un test ne doit pas attendre une personne devant le clavier.
POINT DE CONTRÔLE
Avant de continuer
La classe de calcul se teste-t-elle avec de simples arguments, sans terminal connecté ?