Pattern Etat 1. Construire une interface State 2. Enumerer tous les messages possibles et en faire des methodes de l'interface State 3. Pour chaque état créer une classe ConcreteState qui implémente l'interface State 4. Pour chaque message de chaque état, si l'état effectue une action, appeler la méthode correspondante s'il y a un changement d'état, notifier le 'context' du changement d'état Pattern Singleton 1. Créer une classe Singleton 2. Pour chauqe message possible créer une méthode 3. Créer un attribut qui conserve l'état actuel de la classe (int) 4. Générer des switch case dans chaque méthode pour le travail a effectué si des méthodes doivent être appelés, les appeler si un chgt d'état doit être fait, changer la valeur de l'attribut