Améliorez vos logiciels avec le pattern Etat


précédentsommairesuivant

6. Applications

Quelques exemples d'applications du pattern Etat (il y en a surement d'autres auxquelles je n'ai pas pensé !).

6.1. Définition et implémentation de protocoles

Voir l'exemple de l'automate pour le protocole réseau.

Dans cet exemple, le pattern Etat permet l'implémentation simple de protocoles réseaux. Le fait d'exprimer des protocoles réseau au moyen d'automates permet de vérifier lors de la spécification si le protocole ne comporte pas de failles (sécurité, livelocks...) et de s'assurer, lors de l'implémentation, que le protocole a été implémenté conformément aux spécifications.

6.2. Interface utilisateur

Le pattern Etat peut se révéler utile dans l'implémentation d'interfaces utilisateur, en particulier les interfaces pour lesquelles il existe plusieurs "modes" (et selon le mode en cours, les actions des différentes commandes se trouvent modifiées).

A chaque mode correspond alors un état. Lorsqu'une commande est activée, la méthode correspondante dans l'état en cours est appelée. Il est ainsi possible de désactiver temporairement certaines commandes en implémentant une méthode qui ne fait rien.

6.3. Traitement de fichiers

Voir l'exemple du traitement de fichiers XML avec SAX.

Dans cet exemple, l'empilement des états a permis la sauvegarde et la restauration des différents contextes d'exécution durant les différentes phases du traitement du fichier.

6.4. Intelligence Artificielle

Le pattern Etat peut servir dans l'implémentation de "bots", c'est à dire de programmes reproduisant le comportement humain. Par exemple dans un jeu vidéo, un robot pourra avoir différents états ("attaquer", "aller en renfort", "défendre la position", "rejoindre un point stratégique"...). Suivant le mode (l'état) dans lequel il est, le robot réagira différemment aux différents stimuli du monde qui l'entoure. En interprètant ces stimuli, le robot pourra décider de changer d'état.

Une telle implémentation est à rapprocher du pattern Strategy.



Section suivante: Conclusion




précédentsommairesuivant

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

  

Copyright © 2006 Pierre Caboche. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.