2.2 - Conceptos de diagramas de clases UML Flashcards

1
Q

¿Qué es un diagrama de clases y para qué se utiliza?

A

Es una herramienta de modelado visual utilizada en programación orientada a objetos para representar las clases y las relaciones entre ellas.

Se utiliza para modelar la visión estática de un sistema y soportar los requisitos funcionales del sistema.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

¿Cuáles son los compartimentos de un diagrama de clases y qué información se incluye en cada uno?

A

Las clases se representan gráficamente por medio de un rectángulo con tres divisiones internas. Los tres compartimentos alojan el nombre de la clase, sus atributos y sus operaciones, respectivamente.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

¿Cómo se representan las relaciones entre clases en un diagrama de clases?

A

Se representan mediante líneas que conectan las clases. Las relaciones más comunes son las de asociación (Agregación y Composición), dependencia y generalización.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿Cuál es el objetivo de establecer una visibilidad en los atributos y operaciones de una clase?

A

El objetivo es controlar el acceso a ellos desde otras clases.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Qué tipos de visibilidad existen?

A

(+) Public: los miembros son accesibles desde cualquier parte del sistema.
(-) Private: los miembros son accesibles sólo desde dentro de la clase que los define.
(#) Protected: los miembros son accesibles desde dentro de la clase que los define y desde las subclases que la heredan.
(~) Package: los miembros son accesibles sólo desde dentro del paquete que los contiene.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

¿Cómo vincula el concepto de visibilidad en los atributos y operaciones con el de encapsulamiento?

A

El encapsulamiento en programación orientada a objetos implica ocultar los detalles internos de una clase y revelar solo una interfaz pública, usando la visibilidad para especificar qué partes son accesibles externamente.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

¿Qué es una clase abstracta?

A

Una clase abstracta es una clase que no puede ser instanciada.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Que es una operación abstracta?

A

Una operación abstracta es una operación que no tiene una implementación definida, sino que se define en las subclases que la heredan.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

¿Cómo se representa una clase abstracta?

A

En un diagrama de clases, una clase abstracta se representa con el nombre de la clase en negrita y cursiva, y con la etiqueta {abstracta} debajo del nombre de la clase.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

¿Para qué se utiliza una clase abstracta?

A

Una clase abstracta se utiliza como una plantilla para definir atributos y operaciones comunes que serán heredados por sus subclases.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

¿Qué es una interfaz?

A

Una interfaz define un contrato que las clases que la heredan deben cumplir.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

¿Qué diferencia tiene una interfaz con una clase abstracta?

A
  • Una interfaz sólo puede contener operaciones abstractas, mientras que una clase abstracta puede contener tanto operaciones abstractas como operaciones concretas.
  • Una clase abstracta puede tener atributos, mientras que una interfaz no puede tener atributos.
  • Una clase concreta puede implementar múltiples interfaces, pero sólo una clase abstracta.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

¿Qué es una dependencia?

A

En UML, una dependencia es una conexión semántica entre dos elementos de modelado, uno independiente y otro dependiente.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

¿Qué representa una asociación entre clases?

A

En UML, una asociación es una conexión semántica entre dos clases que representa una relación entre ellas.
Pueden presentar algunos elementos adicionales que dan detalle a la relación, como ser: nombre, multiplicidad, navegabilidad, roles, etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Explique nombre de rol y multiplicidad

A

En UML, el nombre de rol es un elemento adicional que se puede agregar a una asociación para describir el papel que juega una clase en la relación.

La multiplicidad, describe cuántos objetos están conectados en una instancia de una asociación

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

¿Cómo se representan las instancias las clases y las asociaciones?

A

En UML, las instancias de clases y asociaciones se representan mediante diagramas de objetos.
Un diagrama de objetos muestra un ejemplo concreto de un sistema en un momento determinado.

17
Q

¿Qué tipos asociaciones pueden existir?

A

En UML, existen tres tipos de asociaciones: asociación, agregación y composición.

18
Q

Describa la relación Asociación

A

Una asociación es una conexión semántica entre dos clases.
Se dibuja como una línea sólida entre las clases.

19
Q

Describa la relación Agregación

A

La agregación es una forma particular de asociación que expresa un acoplamiento fuerte entre clases, pero la clase dependiente sigue existiendo si es que la clase contenedora desaparece.

20
Q

Describa la relación Composición

A

La Composición implica dependencia existencial (la clase dependiente desaparece al destruirse la que la contiene y, si es de cardinalidad uno, es creada al mismo tiempo)

21
Q

¿Cómo se representa una generalización?

A

Una generalización se representa mediante una línea sólida con una flecha cerrada que apunta desde la subclase a la superclase.

22
Q

¿En qué casos la utilizaría una generalización?

A

La generalización se utiliza en UML para modelar una jerarquía de clases en la que una clase más general tiene atributos y operaciones comunes que son heredados por las clases más específicas.

23
Q

¿Cómo se representa una agregación?

A

La agregación se representa mediante una línea sólida con un rombo hueco en el lado del todo, y una línea sólida que conecta la parte con el rombo.

24
Q

¿Cómo se representa una Composición?

A

La Composición se representa mediante una línea sólida con un rombo relleno en el lado del todo, y una línea sólida que conecta la parte con el rombo.

25
Q

¿Qué es la multiplicidad en un diagrama de clases?

A

La multiplicidad en un diagrama de clases se refiere a la cantidad de instancias de una clase, que pueden estar relacionadas con una o varias instancias de otra clase, a través de una asociación.

26
Q

¿Cómo se representa una multiplicidad en un diagrama de clases?

A

Se representa mediante un rango de valores que se coloca cerca de la línea que representa la asociación entre las clases.