martes, 22 de noviembre de 2011

[PUNTOS EXTRA] Patrones de Diseño


Dra. Sara Elena Garza Villarreal
Materia: Programación Orientada a Objetos
Matricula: 1454810
Hora: M1-M3 (Jueves)

Los patrones de diseño son la base para la búsqueda de soluciones a problemas comunes en el desarrollo de software y otros ámbitos referentes al diseño de interacción o interfaces.

Un patrón de diseño es una solución a un problema de diseño. Para que una solución sea considerada un patrón debe poseer ciertas características. Una de ellas es que debe haber comprobado su efectividad resolviendo problemas similares en ocasiones anteriores. Otra es que debe ser reutilizable, lo que significa que es aplicable a diferentes problemas de diseño en distintas circunstancias.

Un patrón de diseño es:
-         una solución estándar para un problema común de programación
-         una técnica para flexibilizar el código haciéndolo satisfacer ciertos criterios
-         un proyecto o estructura de implementación que logra una finalidad determinada
-         un lenguaje de programación de alto nivel
-         una manera más práctica de describir ciertos aspectos de la organización de un programa
-         conexiones entre componentes de programas
-         la forma de un diagrama de objeto o de un modelo de objeto.

Los patrones de diseño pretenden:
-         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.

No es obligatorio utilizar los patrones, solo es aconsejable en el caso de tener el mismo problema o similar que soluciona el patrón, siempre teniendo en cuenta que en un caso particular puede no ser aplicable. "Abusar o forzar el uso de los patrones puede ser un error".
Según la escala o nivel de abstracción:
-         Patrones de arquitectura: Aquellos que expresan un esquema organizativo estructural fundamental para sistemas de software.
-         Patrones de diseño: Aquellos que expresan esquemas para definir estructuras de diseño (o sus relaciones) con las que construir sistemas de software.
-         Dialectos: Patrones de bajo nivel específicos para un lenguaje de programación o entorno concreto.
-         Interacción: Son patrones que nos permiten el diseño de interfaces web.

Además, también es importante reseñar el concepto de "anti-patrón de diseño", que con forma semejante a la de un patrón, intenta prevenir contra errores comunes de diseño en el software. La idea de los anti-patrones es dar a conocer los problemas que acarrean ciertos diseños muy frecuentes, para intentar evitar que diferentes sistemas acaben una y otra vez en el mismo callejón sin salida por haber cometido los mismos errores.

REFERENCIAS



No hay comentarios:

Publicar un comentario