Saltar al contenido

diferencia entre asociación y agregación

Nuestros mejores programadores han agotado sus reservas de café, en su búsqueda diariamente por la resolución, hasta que Óliver encontró el arreglo en Gogs así que en este momento la compartimos contigo.

Solución:

De la Superestructura UML 2.4.1:

Una asociación declara que puede haber enlaces entre instancias de los tipos asociados. Un enlace es una tupla con un valor para cada extremo de la asociación, donde cada valor es una instancia del tipo de extremo. (Superestructura UML, página 37)

Nada más y nada menos. y muy vago. Debido a esto, también es muy difícil de entender. Lo que definí (en un curso que enseño) es una jerarquía de enlaces desde la dependencia hasta la composición donde:

  1. dependencia de A para B significa que A usos B pero indirectamente (por ejemplo, recibiendo instancias de él y reenviándolos a otros objetos).
  2. Asociación de A para B significa que A usos B directamente, (por ejemplo llamando a métodos)
  3. Agregación de A para B significa que B es parte de A (semánticamente) pero B se puede compartir y si A esta borrado, B no se elimina. Tenga en cuenta que esto no dice nada sobre cómo se implementa “es parte”.
  4. Composición de A para B es como Agregación, donde B no se puede compartir y si A se elimina, todos sus agregados (Bs) también se eliminan.

La agregación es una relación de Asociación en la que la Asociación puede considerarse la clase contenedora ‘Propietaria’ de la clase contenida, y la duración de esa relación no está definida.

La asociación es una relación ‘Has-A’.

Ejemplo:-

  public class Person  
    
   private final Name name;  
   private Address currentAddress;  

   //...  
  

En este caso, la persona tiene un nombre y tiene una dirección, por lo que existe una asociación entre la persona y el nombre y la persona y la dirección.

Una asociación describe una relación entre instancias de una o más clases. En palabras del Manual de referencia de UML, “las asociaciones son el pegamento que mantiene unido un sistema”.

La agregación es una forma de asociación en la que existe una relación “total-parte”. Puede decir que si una clase Avión tiene una clase Motor, entonces esto forma una relación de “parte completa”.

Tienes la opción de corroborar nuestra labor dejando un comentario o dejando una valoración te lo agradecemos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : / /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *