informaticaPC

Patrones de Diseño Software

¿Qué son los patrones de diseño?

Cuando se desarrolla una aplicación software es frecuente encontrarse en la situación de tener que volver a resolver problemas similares a otros que ya hemos solucionado anteriormente, y debemos volver a hacerlo partiendo de cero una y otra y otra vez (incluso dentro del mismo proyecto).

Debido a ello y basándose en la programación orientada a objetos surgieron los patrones de diseño, donde cada uno de ellos define la solución para resolver un determinado problema, facilitando además la reutilización del código fuente.

Dependiendo de su finalidad pueden ser:

  • Patrones de creación: utilizados para crear y configurar de clases y objetos.
  • Patrones estructurales: su objetivo es desacoplar las interfaces e implementar clases y objetos. Crean grupos de objetos.
  • Patrones de comportamiento: se centran en la interacción entre asociaciones de clases y objetos definiendo cómo se comunican entre sí.

Tipos de patrones

Antes de seleccionar un patrón de diseño debemos estar seguros de que sea adecuado para el caso de que se trate, teniendo en cuenta que si debemos hacerle más que unos cambios mínimos puede ser señal de que no sea el más adecuado para lo que necesitemos desarrollar.

Otro concepto del que puedes oír hablar es el de anti-patrones, que hace referencia a los errores que comunmente suelen ocurrir al intentar solucionar problemas conocidos.

No es necesario memorizar cómo funcionan todos los patrones, pero sí es importante saber de su existencia para así recurrir a ellos en caso necesario.

Para aprender más sobre este tema te recomendamos encarecidamente el libro Patrones de Diseño cuyos autores Erich Gamma, Richard Helm, Ralph Johnson y John Vlissides (conocidos como 'la banda de los cuatro' o 'gang of four'... de aquí en adelante GoF) recopilaron 23 de entre los más útiles.

Los patrones que explicamos a continuación han sido extraídos de dicho libro, y aunque nos hemos esforzado en explicarte de la forma más clara y sencilla posible cómo interactúan los diferentes 'engranajes' en cada uno de ellos, es muy recomendable que te hagas con un ejemplar del mismo ya que contiene mucha información importante.

Crear nuestros propios patrones de diseño

Aparte de los patrones que aparecen en el libro que te recomendamos en el punto anterior existen otros muchos, y dependiendo de nuestras necesidades podemos crear otros (y escribir a partir de ellos nuestra propia librería de clases basadas en ellos).

Al crear un nuevo patrón, aparte del nombre hay que describir con detalle el problema que pretende solucionar así como su contexto, indicando en qué casos se puede aplicar además de determinadas consideraciones a tener en cuenta.

Asimismo deberá también describir cómo solventa el problema, así como las posibles consecuencias que puedan haber de ser utilizado.

El aprendizaje de un patrón de diseño es algo que puede requerir de cierto tiempo, así pues en el presente tutorial nos hemos centrado sobre todo en el funcionamiento en sí de cada patrón, con lo que te recomendamos que estudies con detenimiento los códigos de ejemplo poniendo atención a las explicaciones sobre los mismos, y que realices tus propias prácticas luego.

Siguiente Última página
Usamos cookies para ofrecerte una experiencia mejorada, el continuar navegando supone que aceptas su uso