Plataforma

Design patterns, prácticas de programación orientada a objetos

Design patterns, prácticas de programación orientada a objetos

Design patterns (Patrones de diseño)

Design patterns representan las mejores prácticas utilizadas por desarrolladores experimentados en programación orientada a objetos. Son soluciones para problemas generales en el desarrollo de software. Estas soluciones fueron encontradas mediante prueba y error por numerosos desarrolladores en un largo período de tiempo.

¿Quiénes son Gang of four (GOF)?

En 1994, cuatro autores: Erich Gamma, Richard Helm, Ralph Johnson y John Vlissides publicaron un libro titulado “Design Patterns – Elements of Reusable Object-Oriented Software” en donde se inicia el concepto de design patterns en el desarrollo de software.

Según estos autores los design patterns se basan en los siguientes principios de programación orientada a objetos:

  • Programar una interfaz no una implementación.
  • Favorecer la composición de objetos sobre la herencia.

Utilización de design patterns

Los design patterns sirven principalmente para:

  • Proporcionar catálogos de elementos reusables en el diseño de sistemas software.
  • Evitar la reiteración en la búsqueda de soluciones a problemas ya conocidos y solucionados anteriormente.
  • Formalizar un vocabulario común entre diseñadores.
  • Estandarizar el modo en que se realiza el diseño.
  • Facilitar el aprendizaje de las nuevas generaciones de diseñadores condensando conocimiento ya existente.

Asimismo, no pretenden:

  • Imponer ciertas alternativas de diseño frente a otras.
  • Eliminar la creatividad inherente al proceso de diseño.

Todo se resume en mejores prácticas: Los design patterns evolucionaron por un largo período de tiempo, ofreciendo mejores soluciones a ciertos problemas surgidos en la fase de desarrollo de software. Aprender estos patrones ayuda a programadores junior a aprender diseño de software de una forma más fácil, eficiente y rápida.

Tipos de design patterns

Creational patterns: Estos patrones dan la posibilidad de crear objetos ocultando la lógica en vez de iniciar objetos usando nuevos operadores.

Structural patterns: Estos patrones se refieren a clases y la composición de objetos. El concepto de herencia es utilizado para componer interfaces y definir formas para componer objetos y obtener nuevas funcionalidades.

Behavioral Patterns: Estos patrones son específicos para la comunicación entre objetos.

J2EE Patterns: Estos patrones son específicos para la presentación de capas.

Conclusión

Design patterns pueden acelerar el proceso de desarrollo aportando paradigmas de desarrollo probadas. El desarrollo de software requiere considerar aspectos que no son visibles hasta la implementación. Reutilizar patrones ayuda a prevenir aspectos sutiles que pueden causar grandes problemas y ayuda a mejorar la legibilidad del código para desarrolladores y arquitectos que conocen los patrones.

Las técnicas de desarrollo de software son difíciles de aplicar a una gran cantidad de problemas; los design patterns proveen una ayuda general y documentada, que no requiere detalles específicos para un problema particular.

Valora el artículo:

1 Estrella2 Estrellas3 Estrellas4 Estrellas5 Estrellas (1 valoraciones, media: 5,00 sobre 5)
Cargando...
Avatar photo Publicaciones Yunbit Ver más artículos de Publicaciones

Otros artículos de la categoría Programación