POO (3): Relaciones entre clases

16 y 17 de agosto de 2011

 

Vamos a estudiar las relaciones entre clases. Le dedicaremos varios días.

Hoy nos hemos dedicado a los 3 primeros tipos de relaciones:

  • 1ª relación: asociación (1 a varios).

 

  • 2ª relación: muchos a muchos. El diagrama de clases se ve incapaz de soportar esto. Hay que meter una clase intermediadora (el problema es similar a las relaciones M:N).

Se puede ver aquí el proyecto 160811CPO3 con las explicaciones de los dos primeros tipos de relación.

 

  • 3ª relación: agregación y composición. En este proyecto vemos cómo se agrega una clase con otra. En la composición se dice que los objetos de una clase contienen físicamente los objetos de otra clase (usando Arrays o Colecciones).

NOTA: Javier prefiere colecciones.

En este ejemplo, los objetos de la case Polígono van a tener una colección que contendrá objetos del tipo Vértice. Cuando los objetos están dentro de los objetos del otro se denomina Composición. Se señala con un rombo negro.

Para distinguir la Composición de la Agregación, hacemos el siguiente proyecto. La diferencia básica de la Agregación es que si desaparece la clase Almacen se sigue manteniendo la clase agregada (Cliente). En la composición, al desaparecer la de Almacen también desaparecería la clase compuesta (Pasillo).

Nota: la agregación se señala con un rombo vacío.

 

¿Cómo implementar una agregación? Hay 2 formas:

a)     Se pone la clave foránea en Clientes.

b)    En Almacen ponemos una colección con los NIF de los clientes. En el ejercicio optaremos por esta opción (si la clase Clientes tiene más relaciones con otras clases, parace más elegante).

Para implementar la composición, las opciones son las mismas:

a)     Se pone la clave foránea en Clientes.

b)    En Almacen ponemos una colección con los Pasillos (directamente). Es la que empleamos en este proyecto.

c)     En Almacen ponemos una colección con los números de los Pasillos.

 

  • 4ª relación: la dependencia. Una clase depende de otra.

Comentarios

Aún no hay comentarios.

Añadir un Comentario:



Inserta aquí el código de verificación que ves en la imagen.

Acerca de paiou2011

Blog de aula

Suscríbete

RSS | Atom

Contacto

Contactar

Albergado en:blogspot.es

Noticias: Noticias