lunes, 8 de julio de 2013

Decorador (Decorator )

Decorador (Decorator )

El patrón Decorador permite añadir nueva funcionalidad a una familia de componentes manteniendo la interfaz del componente.I mplementa un comportamiento determinado. La clase Decorador contiene un Componente en su interior. Cuando se solicita una operación al objeto de la clase Decorador esta la deriva al Componente que contiene. Las clases derivadas de Decorador son los verdaderos Decoradores que implementan una nueva funcionalidad añadida al Componente quecontienen.
-Por ejemplo, el patrón Decorador se puede utilizar, para añadir cifrado o compresión a las clases de escritura en Streams.

Así, la clase de la que derivan todas sería Writer. Un Writer concreto, por ejemplo, es el FileWriter. La misión de WriterDecorator es la de redirigir las llamadas a los diferentes métodos de la interfaz Writer hacia el Writer concreto que contiene (FileWriter, PrinterWriter...). Finalmente, las clases EncriptWriter y ZipWriter implementan cierta operación sobre el flujo de salida que se dirige hacia el Writer concreto contenido en el Decorador.

No hay comentarios:

Publicar un comentario