lunes, 3 de junio de 2019

DIAGRAMA DE CLASES

Diagrama de clases

En ingeniería de software, un diagrama de clases en Lenguaje Unificado de Modelado (UML) es un tipo de diagrama de estructura estática que describe la estructura de un sistema mostrando las clases del sistema, sus atributos, operaciones (o métodos), y las relaciones entre los objetos

Miembros[editar]

UML proporciona mecanismos para representar los miembros de la clase, como atributos y métodos, así como información adicional sobre ellos.

Visibilidad[editar]

Para especificar la visibilidad de un miembro de la clase (es decir, cualquier atributo o método), se coloca uno de los siguientes signos delante de ese miembro:
+Público
-Privado
#Protegido
/Derivado (se puede combinar con otro)
~Paquete

Ámbitos[editar]

UML especifica dos tipos de ámbitos para los miembros: instancias y clasificadores y estos últimos se representan con nombres subrayados.
  • Los miembros clasificadores se denotan comúnmente como “estáticos” en muchos lenguajes de programación. Su ámbito es la propia clase.
    • Los valores de los atributos son los mismos en todas las instancias
    • La invocación de métodos no afecta al estado de las instancias
  • Los miembros instancias tienen como ámbito una instancia específica.
    • Los valores de los atributos pueden variar entre instancias
    • La invocación de métodos puede afectar al estado de las instancias(es decir, cambiar el valor de sus atributos)
Para indicar que un miembro posee un ámbito de clasificador, hay que subrayar su nombre. De lo contrario, se asume por defecto que tendrá ámbito de instancia.

Relaciones[editar]

Una relación es un término general que abarca los tipos específicos de conexiones lógicas que se pueden encontrar en los diagramas de clases y objetos. UML presenta las siguientes relaciones:

Asociación[editar]

Ejemplo de diagrama de clases con una asociación de dos clases (en inglés)
Una asociación representa a una familia de enlaces. Una asociación binaria (entre dos clases) normalmente se representa con una línea continua. Una misma asociación puede relacionar cualquier número de clases. Una asociación que relacione tres clases se llama asociación ternaria.

Agregación[editar]

Ejemplo de diagrama de clases con una agregación entre dos clases (en inglés)
La agregación o agrupación es una variante de la relación de asociación “tiene un”: la agregación es más específica que la asociación. Se trata de una asociación que representa una relación de tipo parte-todo o parte-de.
Como se puede ver en la imagen del ejemplo (en inglés), un Profesor 'tiene una' clase a la que enseña.

Composición[editar]

El rombo negro muestra una relación de composición: el almacén esta compuesto de cuentas, si se elimina el almacén las cuentas por si solas no tienen sentido como una entidad separada del almacén y se eliminan también. El rombo sin rellenar muestra una relación de agregación: el almacén tiene clientes, si el almacén cierra los clientes irán a otro, su razón de existir sigue teniendo sentido sin el almacén.
La representación en UML de una relación de composición es mostrada con una figura de diamante rellenado del lado del la clase contenedora, es decir al final de la linea que conecta la clase contenido con la clase contenedor.

No hay comentarios:

Publicar un comentario