dudas sobre patrones de diseño

pastu
21 de Octubre del 2009
Estoy aprendiendo los patrones de diseño: de creacion ( factorias abstractas, factoria de métodos y singleton); estructura (Adapter,Composite,decorator,Facade y Proxy) y comprotamiento (Command,iterator,Observer,State, template Method y Visitor) y debo hacer los ejercicio q relaciono abajo aplicando estos patrones y estoy muy perdido. Alguien puede echarme una mano? o indicarme donde puedo documentarme con algun manual q me explique bien la utilizacion de estos patrones? garcia.

La solución a cada problema debe contener:

• Patrón empleado junto con una breve justificación de su elección.
• Diagrama de clases de la solución.
• Breve explicación de la adaptación que se ha hecho del patrón y del papel de cada clase creada

Problema 1
Se desea realizar una aplicación que simule una empresa que monta ordenadores de distintos tipos
tanto sobremesa como portátiles. La aplicación debe permitir la incorporación de nuevos tipos de
ordenadores de forma que no afecte al código realizado. Plantea una solución basada en patrones de
diseño para la aplicación.
Problema 2
Se desea desarrollar una aplicación de gestión de seguros que pueda manejar seguros de distinto tipo
(hogar, automóvil, vida, médicos,..) y permita gestionar paquetes de seguros que agrupen seguros (y
también otros paquetes). El coste de cada paquete se calcula mediante la suma del coste de cada seguro
que incluye. Plantea una solución basada en patrones de diseño para poder calcular el coste de un
paquete de seguros.
Problema 3
Se desea realizar un videojuego de “marcianitos” clásico donde una nave destruye alienígenas de
distintos tipos. Los alienígenas tienen que realizar distintas acciones de ataque y defensa que van
cambiando en tiempo de ejecución. Aplica un patrón de diseño que represente la clase “Alienígena” de
forma que permita la incorporación de diversas acciones de ataque y defensa y que su intercambio en
tiempo de ejecución sea lo más sencillo posible.
Problema 4
Se necesita diseñar una aplicación que permita ejecutar operaciones de comprimir/descomprimir
archivos en diferentes formatos. Los formatos que debe soportar son ZIP y RAR, pero es más que
probable que en el futuro se necesite ampliar la aplicación para que soporte otros formatos. Plantea una
solución basada en patrones de diseño para la aplicación buscando el mayor rendimiento y la máxima
reutilización.
Problema 5
Tenemos un sistema desarrollado que es capaz de ejecutar una serie de operaciones, estas operaciones
tienen unos determinados privilegios de seguridad, existiendo un conjunto de operaciones que pueden
ejecutar todos los usuarios. Se desea realizar una aplicación capaz de asignar a los usuarios del sistema
unos roles de seguridad que determinan que operaciones son capaces de ejecutar en el sistema. Para el
acceso a las operaciones del sistema se quiere utilizar un proxy de protección que dependiendo del rol
de los usuarios podrá realizar unas operaciones u otras. Diseñar una solución basada en patrones que
combinando el patrón proxy con otro consiga resolver la asignación de roles a los usuarios para
ejecutar las operaciones del sistema.