USO
DE RELACIONES
HORA 4
ASOCIACIONES
Cuando
las clases se conectan entre si de forma conceptual, esta conexión se conoce
como asociación. Ejemplo de asociación entre un jugador de baloncesto un
equipo.
Cuando
una
clase se asocia con otra, cada una de ellas juega un papel dentro de tal
asociación. Puede representar estos en papeles en el diagrama escribiéndolos cerca de las líneas que se
encuentran junto a la clase que juega el papel correspondiente.
Las asociaciones pueden funcionar en dirección inversa: un equipo emplea a
jugadores. Para mostrar ambas asociaciones en el mismo diagrama con un
triangulo relleno que indica la dirección de cada asociación.
Las asociaciones podrían ser
más complejas que tan solo una clase conectada a otra. Varias clases pueden ser
conectadas a una.
RESTRICCIONES
EN LAS ASOCIACIONES
En ocasiones una asociación entre dos clases debe seguir
ciertas reglas. Estas se indican al establecer una restricción junto a la línea
de asociación.
Otro tipo de restricción es la relación O (distinguida
como {or} en una línea discontinua que conecte a dos líneas de asociación.
CLASES
DE ASOCIACIÓN
Una asociación al igual que una clase, pude contener
atributos y operaciones. Una case de asociación pude tener asociaciones con
otras clases.
VÍNCULOS
Si podemos imaginar a un jugador especifico que juega para un equipo especifico, la
relación “Participa en” se considera un vinculo ejemplo:
MULTIPLICIDAD
La asociación trazada entre jugador y equipo sugiere que
las dos clases tiene una relación de uno a uno, la cantidad de objetos de una
clase que se relacionan con un objeto de la clase asociada. Ha y varios tipos
de multiplicidad(multiplicidad de multiplicidades), es decir una clase puede
relacionarse con otras en uno a uno, uno a muchos, uno a uno o mas, uno a ninguno o uno a un intervalo definitivo.
Cuando la clase A tiene una multiplicidad de uno a
ninguno o uno con la clase B, la clase B se dice que es opcional para la clase
A.
ASOCIACIONES CALIFICADAS
En el UML la información de identidad se conoce como calificador, su símbolo es un pequeño
rectángulo adjunto a la clase que ara búsqueda.
ASOCIACIONES
REFLEXIVAS
En ocasiones una clase es
una asociación consigo misma. Esto puede ocurrir cuando una clase tiene objetos
que pueden jugar diversos papeles. Esto se representa mediante el trazo de una
línea de asociación a partir del rectángulo hacia el mismo rectángulo de la
clase.
Herencia
y generalización
Uno de los sellos
distintivos de la orientación a objetos es que captura uno de los mayores
aspectos del sentido común en cuanto a la vida diaria.
La orientación a objetos se
refiere a estos como herencia El UML
también lo denomina generalización.
Una clase puede heredar los atributos y operaciones de otra. La clase principal
es más genérica que la secundaria.
La jerarquía de la herencia
no tiene que finalizar en dos niveles: una clase segundaria puede ser principal
para otra clase secundaria. La figura 4.13 muestra particularmente la herencia,
junto con otra clase.
Una clase puede no provenir de una clase
principal, en cuyo caso será una clase base
o clase raíz. Si una clase tiene exactamente una clase principal, tendrá
una herencia simple, si proviene de
varias clases principales tendrá una herencia múltiple.
DESCUBRIMIENTO
DE LA HERENCIA
en el proceso de practica
con un cliente, un analista descubre la herencia de varias forma. Es posible
que las clases candidatas que aparezcan incluyan tanto clases principales como clases secundarias. Otra posibilidad es
que el analista note que dos o mas clases tienen ciertos atributos y
operaciones comunes.
CLASES
ABSTRACTAS
Las clases secundarias son
importantes en el modelo dado finalmente que usted puede tener instancias de
tales clases. Para desarrollar el modelo, necesita instancias de defensa,
delantero, centro, cronometro de juego y lapso de tiempo.
DEPENDENCIA
El uso mas común de una
dependencia es mostrar que la firma de la operación de una clase utiliza a otra
clase se cono como dependencia.
La notación del UML para
ellos es una línea discontinua con una punta de flecha en forma de triangulo
sin relleno que apunta a la clase de la que depende.
No hay comentarios:
Publicar un comentario