Single Responsibility
Vues JavaFX (GameScreen, LocalMazeView) dédiées au rendu; contrôleurs (DefaultGameController) dédiés à la logique; générateurs dédiés à la génération.
Vues JavaFX (GameScreen, LocalMazeView) dédiées au rendu; contrôleurs (DefaultGameController) dédiés à la logique; générateurs dédiés à la génération.
MazeGeneratorStrategy + Factory permettent d’ajouter des générateurs sans modifier le code existant.
StandardGame/ParentGame/MemoryGame substituables via l’interface Game; contrôleur manipule Game abstrait.
Interfaces fines: KeyController, GameObserver, GameSessionContext pour limiter les dépendances.
DefaultGameController dépend de MazeBuilder/GameSessionContext abstraits au lieu de singletons concrets.