Un visiteur… …venu d’ailleurs Whooooooooooooooo!!!
Sommaire Classification /JTT Intention /JBZ Motivation /JBZ Utilisation /JBZ Constituants /MSR Structure /MSR Collaboration /JTT Conséquence /JTT Considération d’implémentation /MSR Exemple d’implémentation /JBZ Mini Projet / TT LE MONDE
Classification Comportemental – Objet Relation Dynamique => Objet Un élément fait appel à un visiteur Collaborations => Comportemental
Intention
Utilisation
Constituant(1/2) Structure de l’objet Représente la structure des éléments liste, Set, Composite - Arbre Visiteur Interface Définit les méthode de visite pour chaque classe concrète de la structure Elément Interface représentant les éléments constituant la structure de l’objet Définit la méthode abstraite permettant l’appel au visiteur
Constituant(2/2) Visiteur concret Implémente les opérations du Visiteur Définit un contexte pour la visite et garde son état local Elément concret Implémente la méthode d’appel au visiteur Se passe en paramètre à la bonne méthode du visiteur
Structure
Collaboration
Conséquence Avantages – Facile de rajouter de nouvelles opération (visiteur) – Le visiteur peut garder des états des éléments. On ne doit ainsi pas les passer en argument (…??...) – Les algorithmes de traitement d’un élément ne sont pas dans sa classe => meilleure séparation Désavantage – Difficile de rajouter de nouveaux éléments => il faut changer chaque visiteur – L’encapsulation est limitée car il faut laisser les méthodes d’accès en public dans l’élément
Considération d’implémentation
Exemple d’implémentation
Mini Projet Simulateur de mise à jour de configuration d’équipement réseau.