Author: Christian.Queinnec@lip6.fr

## Introduction

Les deux applications de ce chapitre illustrent la structuration de programmes selon le modèle modulaire pour la première et objet pour la deuxième.
La première application propose un ensemble de modules paramétrés pour les jeux à deux joueurs. Un premier foncteur implante l'algorithme minimax-ab pour l'élagage de l'arbre de recherche. Un deuxième foncteur permet de changer l'interface homme-machine du jeu. Ces modules paramétrés sont ensuite appliqués à deux jeux : un morpion gravitationnel et un jeu de construction de lignes de force.
La deuxième application construit un monde où évoluent des robots. Le monde et les robots sont structurés en classes. Les différents comportements des robots sont obtenus par héritage d'une classe abstraite commune. Il est donc facile de définir de nouveaux comportements. Là aussi l'interface homme-machine peut être modifiée.
Chacune de ces deux applications, de part sa structuration, contient des composants qui sont réutilisables. Il est aisé de construire un nouveau jeu à deux joueurs, de même le mécanisme général de déplacement d'un robot dans un monde reste valable pour d'éventuels nouveaux robots.