Está en la página 1de 12

Universidad Nacional Facultad de Ingeniería

de Trujillo Escuela Profesional de Ingeniería de Sistemas

PROGRAMACIÓN
ORIENTADA A OBJETOS II
Ms. Zoraida Yanet VIDAL MELGAREJO
zvidal@unitru.edu.pe

Sesión 04

Diagramas de clase
(2da parte)

2
Curso: Programación Orientada a Objetos II Tema: Diagramas de Clase
Docente: Ms. Zoraida Yanet Vidal Melgarejo Página - 1 -
Universidad Nacional Facultad de Ingeniería
de Trujillo Escuela Profesional de Ingeniería de Sistemas

El Diagrama de Clase: las Relaciones

1.- Relación de Asociación

1.1.- Asociación de Agregación

1.2.- Asociación de Composición

2.- Relación de Dependencia

3.- Relación de Generalización

-3-

Las Relaciones: Asociación de


Composición

• Es un tipo de relación fuerte, el objeto


agregado no puede existir de forma
independiente.

• Agregación disjunta y estricta: Las partes


sólo existen asociadas al compuesto (sólo
se accede a ellas a través del
compuesto).

• Gráficamente, se muestra con un rombo


lleno en uno de los extremos (compuesto).

-4-

4
Curso: Programación Orientada a Objetos II Tema: Diagramas de Clase
Docente: Ms. Zoraida Yanet Vidal Melgarejo Página - 2 -
Universidad Nacional Facultad de Ingeniería
de Trujillo Escuela Profesional de Ingeniería de Sistemas

Las Relaciones: Asociación de


Composición

-5-

Las Relaciones: Asociación de Agregación

• Es un tipo de relación débil, el objeto


agregado puede existir de forma
independiente.

• Las partes pueden forma parte de distintos


agregados.

• Gráficamente, se muestra con un rombo


vacío en uno de los extremos.

-6-

6
Curso: Programación Orientada a Objetos II Tema: Diagramas de Clase
Docente: Ms. Zoraida Yanet Vidal Melgarejo Página - 3 -
Universidad Nacional Facultad de Ingeniería
de Trujillo Escuela Profesional de Ingeniería de Sistemas

Las Relaciones: Asociación de Agregación

-7-

Las Relaciones:
Dependencia

• Relación (más débil que una asociación) que muestra Premio Nobel
la relación deun
entre Literatura
cliente y el
proveedor de un servicio usado por el cliente:
✓ Cliente es el objeto que solicita un servicio.
✓ Servidor es el objeto que provee el servicio solicitado.

• Un cambio en un elemento (el elemento independiente) puede afectar a la semántica


del otro elemento (elemento dependiente).

-8-

8
Curso: Programación Orientada a Objetos II Tema: Diagramas de Clase
Docente: Ms. Zoraida Yanet Vidal Melgarejo Página - 4 -
Universidad Nacional Facultad de Ingeniería
de Trujillo Escuela Profesional de Ingeniería de Sistemas

Las Relaciones: Dependencia

Gráficamente, la dependencia se muestra como una línea discontinua con una


punta de flecha que apunta del cliente al proveedor.

Clase dependiente Clase independiente

Video Televisión
Canal

grabar(c : canal) cambiar(c : canal)

-9-

Las Relaciones: Dependencia

- 10 -

10
Curso: Programación Orientada a Objetos II Tema: Diagramas de Clase
Docente: Ms. Zoraida Yanet Vidal Melgarejo Página - 5 -
Universidad Nacional Facultad de Ingeniería
de Trujillo Escuela Profesional de Ingeniería de Sistemas

Las Relaciones:
Generalización

• Es una relación entre dos clases en donde una de Premio Nobel de Literatura
ellas, llamada subclase o clase hija, hereda los
atributos y el comportamiento de otra, llamada
superclase o clase padre.

• En una generalización no hay multiplicidad ni


roles.

• Las subclases heredan características de las clases


de las que se derivan y añaden características
específicas que las diferencian.
• La visibilidad “protected” permite que sólo objetos
de la misma clase o subclase vean el elemento.
- 11 -

11

Las Relaciones: Generalización

- 12 -

12
Curso: Programación Orientada a Objetos II Tema: Diagramas de Clase
Docente: Ms. Zoraida Yanet Vidal Melgarejo Página - 6 -
Universidad Nacional Facultad de Ingeniería
de Trujillo Escuela Profesional de Ingeniería de Sistemas

Diagrama de clase:
Paquete

• Es un elemento organizador que proporciona Premio Nobel de Literatura


UML al dividir el sistema en paquetes que lo
hace más fácil de entender.

• Un paquete es una forma de agrupar clases (u


otros elementos en otro tipo de diagramas) en
modelos grandes. Pueden tener asociaciones
de dependencia o de generalización entre
ellos. Un ejemplo puede ser el siguiente.

- 13 -

13

Diagrama de clase:
Interfaces

Premio Nobel
• Una interface no es una clase. Una clase tiene una instancia de Literatura
de su tipo, mientras que
una interface debe tener al menos una clase para implantarla. En UML, una interface
es considerada como una especialización de una clase.

• Una interface se dibuja como una clase, pero en el compartimento superior del
rectángulo aparece un texto ó una inicial que indica que se trata de una interface y no
de una clase.

• Se representan como clases pero con el estereotipo <<interface>>.

• Solo contienen operaciones públicas.

- 14 -

14
Curso: Programación Orientada a Objetos II Tema: Diagramas de Clase
Docente: Ms. Zoraida Yanet Vidal Melgarejo Página - 7 -
Universidad Nacional Facultad de Ingeniería
de Trujillo Escuela Profesional de Ingeniería de Sistemas

Diagrama de clase: Interfaces

• En el diagrama anterior las clases ArrayList y LinkedList implementan a la interface


List. Se reconoce a la interface por que en el diagrama se puede visualizar el
estereotipo <<interface>> y porque las líneas que indican el tipo de relación son
punteadas y no continuas (como en la herencia entre clases).

- 15 -

15

Diagrama de clase: Clase


Abstracta

▪ Una clase abstracta Premio Nobel


se denota conde Literatura
el nombre de la
clase y de los métodos con letra "itálica". Esto indica
que la clase definida no puede ser instanciada pues
posee métodos abstractos (aún no han sido
definidos, es decir, sin implementación).

▪ La única forma de utilizarla es definiendo subclases,


que implementan los métodos abstractos definidos.

- 16 -

16
Curso: Programación Orientada a Objetos II Tema: Diagramas de Clase
Docente: Ms. Zoraida Yanet Vidal Melgarejo Página - 8 -
Universidad Nacional Facultad de Ingeniería
de Trujillo Escuela Profesional de Ingeniería de Sistemas

Diagrama de clase: Clase


Parametrizada

▪ Se denota con un subcuadro en el extremo superior


Premio Nobel de Literatura
de la clase, en donde se especifican los parámetros
que deben ser pasados a la clase para que esta
pueda ser instanciada.

▪ El ejemplo más típico es el caso de un Diccionario


en donde una llave o palabra tiene asociado un
significado, pero en este caso las llaves y elementos En el ejemplo no se especificaron los
pueden ser genéricos. atributos del Diccionario, pues ellos
dependerán exclusivamente de la
▪ La genericidad puede venir dada de un Template implementación que se le quiera dar.
(como en el caso de C++) o bien de alguna
estructura predefinida (especialización a través de
clases).
- 17 -

17

Diagrama de Clase:
Ejemplo 2.

Premiorealiza
• En una empresa de Ventas, un cliente (Natural o Jurídico) Nobelunde Literatura
pedido que es
atendido por un Personal. Dicho personal tiene a su cargo a otro personal. El cual ocupa
un puesto específico en la empresa.
• En un pedido se pueden consignar la venta de varios productos. Así también un
producto puede estar relacionado con varios pedidos.
• Un producto se encuentra relacionado con una sola categoría, a la cual pueden
pertenecer varios productos

• Realizar un Diagrama de Clases que grafique las relaciones existentes.

- 18 -

18
Curso: Programación Orientada a Objetos II Tema: Diagramas de Clase
Docente: Ms. Zoraida Yanet Vidal Melgarejo Página - 9 -
Universidad Nacional Facultad de Ingeniería
de Trujillo Escuela Profesional de Ingeniería de Sistemas

Diagrama de Clase: Ejemplo 2.

- 19 -

19

Diagrama de Clase:
Ejemplo 3.

Premio Nobel
• La Policía quiere crear una base de datos sobre la seguridad de Literatura
en algunas entidades
bancarias. Para ello tiene en cuenta:
• Que cada entidad bancaria se caracteriza por un código y por el domicilio de su Central.
• Que cada entidad bancaria tiene más de una sucursal que también se caracteriza por un
código y por el domicilio, así como por el número de empleados de dicha sucursal.
• Que cada sucursal contrata, según el día, algunos vigilantes jurados, que se caracterizan
por un código y su edad. Un vigilante puede ser contratado por diferentes sucursales
(incluso de diferentes entidades), en distintas fechas y es un dato de interés dicha fecha,
así como si se ha contratado con arma o no.
• Por otra parte, se quiere controlar a las personas que han sido detenidas por atracar las
sucursales de dichas entidades. Estas personas se definen por una clave (código) y su
nombre completo.

- 20 -

20
Curso: Programación Orientada a Objetos II Tema: Diagramas de Clase
Docente: Ms. Zoraida Yanet Vidal Melgarejo Página - 10 -
Universidad Nacional Facultad de Ingeniería
de Trujillo Escuela Profesional de Ingeniería de Sistemas

Diagrama de Clase: Ejemplo 3.

• Alguna de estas personas están integradas en algunas bandas organizadas y por


ello se desea saber a qué banda pertenecen, sin ser de interés si la banda ha
participado en el delito o no Dichas bandas se definen por un número de banda y
por el número de miembros.
• Así mismo, es interesante saber en qué fecha ha atracado cada persona una
sucursal. Evidentemente, una persona puede atracar varias sucursales en diferentes
fechas, así como que una sucursal puede ser atracada por varias personas.
• Igualmente, se quiere saber qué Juez ha estado encargado del caso, sabiendo que
un individuo, por diferentes delitos, puede ser juzgado por diferentes jueces. Es de
interés saber, en cada delito, si la persona detenida ha sido condenada o no y de
haberlo sido, cuánto tiempo pasará en la cárcel. Un Juez se caracteriza por una
clave interna del juzgado, su nombre y los años de servicio.
• NOTA: En ningún caso interesa saber si un vigilante ha participado en la detención
de un atracador.

- 21 -

21

Diagrama de Clase: Ejemplo 3.

- 22 -

22
Curso: Programación Orientada a Objetos II Tema: Diagramas de Clase
Docente: Ms. Zoraida Yanet Vidal Melgarejo Página - 11 -
Universidad Nacional Facultad de Ingeniería
de Trujillo Escuela Profesional de Ingeniería de Sistemas

Diagrama de Clase:
Ejemplo 4.

Premio Nobel
• Una biblioteca tiene copias de libros. Estos últimos se caracterizan denombre,
por su Literatura
año y
autor.
• Un libro está relacionado con una categoría (novela, teatro, poesía, ensayo) así como
también con una editorial.
• Los autores se caracterizan por su nombre y fecha de nacimiento. Se considera que el
autor sólo tiene una nacionalidad.
• Cada copia tiene un identificador, y puede estar en la biblioteca, prestada, con retraso o
en reparación.
• Los lectores pueden tener un máximo de 3 libros en préstamo.
• Cada libro se presta un máximo de 30 días, por cada día de retraso, se impone una
“multa” de dos días sin posibilidad de coger un nuevo libro.
• Realizar un diagrama de clases para realizar el préstamo y devolución de libros.

- 23 -

23

Diagrama de Clase: Ejemplo 4.

- 24 -

24
Curso: Programación Orientada a Objetos II Tema: Diagramas de Clase
Docente: Ms. Zoraida Yanet Vidal Melgarejo Página - 12 -

También podría gustarte