miércoles, 11 de mayo de 2022

Patrones de comportamiento

 

       Los patrones de comportamiento ofrecen soluciones respecto a la colaboración, relaciones y delegación de responsabilidades entre otras clases logrando con esto simplificar la forma en que los objetos se comunican e interactúan entre sí .



Entre los mas populares nos encontramos con:

  • Chain responsability
  • Command
  • Iterator
  • Mediator
  • Memento
  • Observer
  • Visitor

martes, 10 de mayo de 2022

Patrones de diseño


        Los patrones de diseño son soluciones habituales a problemas que ocurren con frecuencia en el diseño de software. Son como planos prefabricados que se pueden personalizar para resolver un problema de diseño recurrente en tu código. 


Pero el patrón no es una porción específica de código, sino un concepto general para resolver un problema particular principalmente trabajando  en orientado a objetos.

Puedes seguir los detalles del patrón e implementar una solución que encaje con las realidades de tu propio programa.  Pero el código del mismo patrón aplicado a dos programas distintos puede ser diferente.

Una analogía de un algoritmo sería una receta de cocina: ambos cuentan con pasos claros para alcanzar una meta. Por su parte, un patrón es más similar a un plano, ya que puedes observar cómo son su resultado y sus funciones, pero el orden exacto de la implementación depende de ti.

Ventajas:
  1.  Son fáciles de adaptar a cambios predecibles según las necesidades del negocio.
  2.  Son fáciles de probar de manera unitaria y validar sus componentes individuales.
  3. Pueden proveer organización y estructura cuando los requerimientos de negocio son muy complicados.
  4. Reutilización de código ahorra tiempo de desarrollo

Deventajas:
  1. Los que están aprendiendo a programar podrían no entenderlos fácilmente.
  2. En ocasiones se usan de manera incorrecta y sin un entendimiento realista de como el software va a cambiar.
  3. Pueden añadir cargo en memoria y procesamiento, por lo que en ocasiones no es apropiado para aplicaciones que tienen sistemas hechos a un bajo nivel de programación o sistemas embebidos.


Existen tres tipos de patrones de diseño:

  • Patrones estructurales
  • Patrones creacionales
  • Patrones de comportamiento


Conoce acerca de los patrones de diseño en menos de 10 minutos.



Ejemplos de patrones de diseño

Patrones estructurales

 

        Los patrones estructurales se enfocan en como las clases y objetos se componen para formar estructuras mayores.

Describen como las estructuras compuestas por clases crecen para crear nuevas funcionalidades de manera de agregar a la estructura flexibilidad y que la misma pueda cambiar en tiempo de ejecución lo cual es imposible con una composición de clases estáticas.



Entre los patrones estructurales mas populares tenemos:
  • Adapter
  • Brindge
  • Composite
  • Decorator
  • Facade
  • Proxy


Patrones creacionales


        Los patrones creacionales definen cómo puede crearse un objeto. Habitualmente esto incluye aislar los detalles de la creación del objeto, de forma que su código no dependa de los tipos de objeto que hay y, por lo tanto, no deba ser modificado al añadir un nuevo tipo de objeto.


Con esto buscan en cierta forma "despreocupar" al sistema de como sus objetos son creados o compuestos.


Entre los más utilizados se encuentran:
  • Singleton
  • Factory method
  • Abstract factory
  • Builder
  • Prototype


Patrones de comportamiento

         Los patrones de comportamiento  ofrecen soluciones respecto a la colaboración, relaciones y delegación de responsabilidades entre o...