simbologia ejemplos diagramas diagrama clases design-patterns design uml class-diagram

design-patterns - ejemplos - diagramas uml



¿Qué significa un signo de diamante en los diagramas de clase UML? (3)

El cliente y el pedido tienen una relación de composición "tiene una" porque si el cliente deja de existir también lo hace su pedido. Por lo tanto, existe una dependencia del ciclo de vida entre el contenedor (cliente) y las instancias dentro de ese contenedor (pedido). Cuando el contenedor deja de existir también lo hacen todas sus instancias.

Por otro lado, si decimos que un cliente tiene un libro. En este caso, tenemos una relación de agregación "tiene una". Porque si el cliente deja de existir, el libro aún está disponible.

Considere los dos diagramas siguientes. El superior contiene una flecha simple en el extremo derecho, y el inferior contiene una flecha con un diamante en el extremo izquierdo y una flecha simple en el extremo derecho. El gran libro GoF tiene usos de estos dos tipos de diagramas.

Quiero entender qué significa el diamante en el segundo caso, y cuál de estos dos otorga una asociación más fuerte entre Customer y Order .

¿ Customer clase de Customer responsable por el ciclo de vida de la clase de Order en cualquiera de los dos casos?


Si no hay diamantes, entonces tenemos una asociación simple.

Si el diamante se deja vacío, significa que es una agregación. Esta relación es más fuerte que una simple asociación. En este caso, un Cliente agrega Órdenes.

Si el diamante es negro, esto significa que es una composición, que es incluso más fuerte que una agregación porque la clase agregada no puede agregarse por otras clases. Su "vida" depende del contenedor.

Creo que se explica un poco más claramente en:


Significa agregación. De la wikipedia:

En UML, se representa gráficamente como una forma de diamante hueco en el extremo de la clase que contiene el árbol con una sola línea que conecta la clase contenida con la clase contenedora. El agregado es semánticamente un objeto extendido que se trata como una unidad en muchas operaciones , aunque físicamente está hecho de varios objetos menores.

http://en.wikipedia.org/wiki/Class_diagram