DESARROLLO DE SOFTWARE
6. ARQUITECTURA DE SOFTWARE
PATRONES DE COMPORTAMIENTO
Estado: Nos permite definir un comportamiento diferente dependiendo del estado interno
en que se encuentre un objeto. Es decir, mediante la invocación del mismo método, el
objeto se comporta de modo diferente dependiendo del estado.
Podemos apreciar la utilidad de éste patrón cuando necesitamos manejar una conexión, en
donde nuestro objeto se comportará de forma diferente cuando realicemos una petición de
conexión dependiendo del estado en el que se encuentre actualmente la conexión.
Visitor: Pretende separar las operaciones de la estructura del objeto, para ello, se definen
unas clases elemento con un método “aceptar” que recibirá al “visitante”, teniendo un
visitador por clase. De este modo, utilizamos las clases elemento para definir la estructura
del objeto, y los visitantes para establecer los algoritmos y operaciones del objeto visitado.
El uso más evidente en donde se utiliza el patrón visitor es en los analizadores sintácticos o
gramáticos como por ejemplo en las expresiones regulares.
Iterador: El patrón iterador establece una interfaz, cuyos métodos permiten acceder a un
conjunto de objetos de una colección. Los métodos necesarios para recorrer la colección
pueden variar dependiendo de las necesidades que tengamos y de lo que necesitemos
hacer, pero es habitual crear o necesitar métodos que permitan acceder al primer
elemento, obtener el elemento actual y saber si hemos llegado al final de la colección.
Cuando recorremos colecciones con estructuras de bucle como foreach, se utiliza un
enumerador que es una implementación del patrón iterador.