Cuando se realiza un
diagrama de objetos se deben representar las interacciones de los objetos, y
para esto se utilizan patrones de principios generales para asignar
responsabilidades:
- Experto: Se debe asignar la responsabilidad al experto de la información es decir, la clase que cuenta con la información para cumplir la responsabilidad.
- Creador: Se asigna responsabilidad de crear una nueva instancia a que agrega, contiene, registra o utiliza una instancia, el creador se debe conectar con el objeto producido en cualquier evento.
- Bajo Acoplamiento: Pocas dependencias entre clases, aumento de reutilización, es uno de los principios más importante a tener en cuenta e el diseño. Asignar responsabilidad de modo que no se incremente el acoplamiento, fomenta el diseño de clases independientes, que reduce el impacto de los cambios.
- Alta Cohesión: Mantener la complejidad manejable (KISS), una clase posee un número relativamente pequeño con una importante funcionalidad relacionada y poco trabajo, si la tarea a realizar es grande, comparte el esfuerzo con otro objeto, mejorando así la claridad y facilidad para entender el diseño.
- Controlador: Asigna el manejo de eventos del sistema a una clase que represente:
- La empresa global
- Algo en el mundo real que es activo y puede participar en una tarea
- Un ma
- El sistema Global
- nejador artificial de todos los eventos del sistema
Patrones Adicionales
- Polimorfismo: Asignar el mismo nombre a servicios en varios objetos, cuando los servicios se parecen o están relacionados entre si
- Fabricación Pura: Asignar un conjunto de responsabilidades a una clase artificial que o representa nada en el dominio del sistema.
- Indirección: Asignar la responsabilidad a un objeto intermedio que medie entre otros componentes o servicios, evitando así el acoplamiento.
- No hables con extraño: Se asigna la responsabilidad a un objeto del cliente para que colabore con un objeto indirecto, de modo que el cliente o necesite saber nada del objeto indirecto. No Hables con Extraños se refiere a no obtener una temporal frente a objetos indirectos, que son de conocimiento de otros objetos pero no del cliente.
http://www.ecured.cu/index.php/Patrones_de_Asignaci%C3%B3n_de_Responsabilidades
No hay comentarios:
Publicar un comentario