PATRON VISITOR

Motivación:
Permite incluir nuevos métodos a una clase sin tener que modificar a gran escala las clases existentes, cuando se dispone de una estructura jerárquica en la que clases padre y clases hoja comparten métodos en común.
Estructura:
Participantes:
  • Visitor(VisitorNodo): 
Declara una operación visitar para cada clase de operación ElementoConcreto de la estructura de objetos.
  • ConcretVisitor(VisitorComprobacionDeTipos): 
Implementa cada operación declarada por Visitor.
  • Element(Nodo):
Define una operación que le permite aceptar la visita de un Visitor.
  • ConcretoElement(NodoAsignación): 
Implementa la operación Aceptar que se limita a invocar su correspondiente método del Visitor.
  • ObjectStructure(EstructuraDeObjetos-Programa): 
Puede enumerar sus elementos y puede proporcionar una interfaz de alto nivel para permitir al Visitor visitar sus elementos.
Referencias:
  • DesIgn Patterns: Elements of Reusable Object-Oriented Software Gamma, Helm, Johnson,   Vlissides Editorial              Addison-Wesley.
  •   www.kybele.escet.urjc.es/documentos/SI/Patrones/23_Visitor.ppt

No hay comentarios:

Publicar un comentario