previous up next top index
Précédent : Formalisme Remonter : Actions de recherche Suivant : Héritage


Mixins

Notre proposition généralise la notion de mixin qui existe dans certains langages à objets sophistiqués. Nous ne lui connaissons aucun équivalent dans un espace d'états à N-dimensions. Alors qu'une classe décrit le comportement d'objets instantiables similaires, les mixins spécifient des suppléments de comportements indépendants, mais non instantiables en tant que tels. Un mixin est donc destiné à être attaché à une classe (dite de base) pour produire une nouvelle classe (dite dérivée). L'opération en question est appelée dérivation. Après avoir défini la forme générale d'un mixin (une sélection à multiples niveaux), nous avons montré qu'il était essentiel de distinguer la topologie de chaque transition au point d'attache de la classe de base (transition circulaire, transition sortante ou transition impure, i.e. sortante mais avec une possibilité de retour au point d'attache via des transitions réflexes). Chaque cas implique certaines contraintes pour les transitions similaires dans le mixin. A partir de là, on peut définir des règles par défaut qui permettent une expression simplifiée des transitions dans un mixin. A chaque mixin sont attachées ses contraintes d'emploi (i.e. les transitions requises au point d'attache de la classe de base). Il est possible de définir des mixins paramétrés pour couvrir différents cas par des mixins bien adaptés et donc plus simples. Ceci permet de prendre en compte les cas limites -comme une pile ne pouvant contenir qu'un seul élément- tout en préservant l'efficacité : le choix du mixin effectif est fait à la création de l'instance.