miércoles, 30 de marzo de 2011

Patrones de Diseño (CLASE)

Qué tal, en esta entrada les comentaré los patrones de diseño, que por lo que entendí, contiene o pueden ser implementados en mi proyecto.

Primero que nada definir lo qué es un patrón de diseño.

"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 reusable, lo que significa que es aplicable a diferentes problemas de diseño en distintas circunstancias."


Ahora, en la siguiente imagen que es mi diagrama de clases, señale cuáles patrones de diseño considero pueden considerarse en mis clases.




Los patrones que identifique pueden ser o servir son el Iterator y el Interpreter.

Definidos por Wikipedia:
----------------------------------------------------------------------------------------------------------------------------------

"El patrón de diseño Iterador, define una interfaz que declara los métodos necesarios para acceder secuencialmente a un grupo de objetos de una colección. Algunos de los métodos que podemos definir en la interfaz Iterador son:
Primero(), Siguiente(), HayMas() y ElementoActual()

Este patrón de diseño permite recorrer una estructura de datos sin que sea necesario conocer la estructura interna de la misma.

En java por ejemplo:
"Un iterador es el recurso para recorrer colecciones. El iterador siempre conoce donde esta el próximo elemento. Algunos conocen donde está el elemento previo. O sea, que pueden reconocer la colección en ambos sentidos".
----------------------------------------------------------------------------------------------------------------------------------

El patrón de diseño Interpreter, se usa para definir un lenguaje para representar expresiones regulares que representen cadenas a buscar dentro de otras cadenas. Además, en general, para definir un lenguaje que permita representar las distintas instancias de una familia de problemas.

----------------------------------------------------------------------------------------------------------------------------------


Ahora explicaré por qué consideré estos patrones:

Primero,

El patrón Iterator, debido a que los productos son guardados en listas, para poder imprimirlos hay que usar un iterador que recorra las listas buscando información alojada y si la encuentra, la imprime a la pantalla.

El patrón Interpreter, es debido a que tuve que crear objetos que me reconocieran los tipos de datos enteros y flotantes y poder generar las listas de productos, y así pueda guardar e imprimir cadenas de datos.

Cualquier comentario o corrección es bien recibida, honestamente no le entendí muy bien a este tema.

Saludos

1 comentario: