The gang of four GoF
En la Parte 1 deesta serie de tres partes introducir patrones de diseño, me referí a los patrones de diseño: elementos reutilizables de diseño orientado a objetos. Este clásico fue escrito por Erich Gamma, Richard Helm, Ralph Johnson y John Vlissides, que eran conocidos colectivamente como la Banda de los Cuatro. Como muchos lectores sabrán, patrones de diseño presenta 23 patrones de diseño de software que encajanen las categorías presentadas en la Parte 1: creacional, estructural y de comportamiento.
Patrones GoF en JavaWorld
Diseño de Java series patrones de David Geary introdujo muchos de los patrones GoF en código Java. Vea la sección de Recursos al final de este artículo para obtener una lista de artículos de Geary en JavaWorld.
Patrones de Diseño es una lectura canónica para los desarrolladoresde software, pero muchos de los nuevos programadores son cuestionadas por su formato de referencia y ámbito de aplicación. Cada uno de los 23 patrones se describe en detalle, en un formato de plantilla que consiste en 13 secciones, que puede ser mucho para digerir. Otro reto para el nuevo Java desarrolladores es que la banda de los cuatro patrones de la primavera de la programación orientada aobjetos, con ejemplos basados en C + + y Smalltalk, no código Java.
En este artículo voy a desempacar dos de los patrones de uso común - Estrategia y visitantes - desde la perspectiva de un desarrollador de Java. La estrategia es un patrón bastante simple que sirve como ejemplo de cómo conseguir sus pies mojados con los patrones de diseño GoF general; visitantes es más compleja y de alcanceintermedio. Voy a empezar con un ejemplo que debe desmitificar doble despacho, que es una parte importante del patrón de visitantes. A continuación, voy a demostrar el patrón de visitantes en un caso de uso del compilador.
Después de mis ejemplos aquí debe ayudarle a explorar y utilizar los otros patrones GoF por ti mismo. Además, voy a ofrecer consejos para sacar el máximo provecho de la Banda de losCuatro libros y concluir con un resumen de las críticas de la utilización de patrones de diseño en el desarrollo de software. Esa discusión podría ser especialmente relevante para los desarrolladores nuevos a la programación.
Desembalaje Estrategia
El patrón de estrategia le permite definir una familia de algoritmos, como los utilizados para la clasificación, composición de texto, o lagestión de diseño. Estrategia también le permite encapsular cada algoritmo en su propia clase y hacerlos intercambiables. Cada algoritmo de encapsulado se conoce como una estrategia. En tiempo de ejecución, el cliente elige el algoritmo adecuado para sus necesidades.
¿Qué es un cliente?
Un cliente es cualquier pieza de software que interactúa con un patrón de diseño. Aunque por lo general unobjeto, un cliente podría ser también código en public static void main (String [] args) de un método de aplicación.
A diferencia del patrón Decorator, que se centra en el cambio de la piel de un objeto, o la apariencia, la estrategia se centra en el cambio de valor del objeto, es decir, sus comportamientos cambiantes. Estrategia le permite evitar el uso de múltiples sentencias condicionales...
Regístrate para leer el documento completo.