Diagramas de Clase



Los diagramas de clase son más fáciles de lo que parecen. Simplemente son diagramas que describen la estructura de un sistema al modelar sus clases, atributos, operaciones y relaciones entre objetos.

¿Qué es un diagrama de clase en UML?

El Lenguaje de modelado unificado puede ayudarlo a modelar varios subconjuntos de diagramas, incluidos diagramas de comportamiento, diagramas de interacción y diagramas de estructura. Los diagramas de clases son un tipo de diagrama de estructura porque describen lo que debe estar presente en el sistema que se está modelando. Por lo general, los utilizan los ingenieros para documentar la arquitectura del software.

Un diagrama de clase es el corazón de UML. Representa los propósitos centrales de UML porque separa los elementos de diseño de la codificación del sistema. UML se configuró como un modelo estandarizado para describir un enfoque de programación orientado a objetos. Dado que las clases son el bloque de construcción de los objetos, los diagramas de clase son los componentes básicos de UML. Los componentes de diagramación en un diagrama de clases pueden representar las clases que realmente se programarán, los objetos principales o la interacción entre clase y objeto.


La forma de clase en sí consiste en un rectángulo con tres filas. La fila superior contiene el nombre de la clase, la fila del medio tiene los atributos de la clase y la sección inferior expresa los métodos u operaciones que la clase puede utilizar. En un diagrama, las clases y subclases se agrupan para mostrar la relación estática entre cada objeto. 

Conceptos básicos de los diagramas de clase

Clase - Diagrama Anatomía



El diagrama de clases se compone de tres partes:

  • Sección superior - Nombre de la clase - Esta sección siempre es necesaria si está hablando del clasificador o de un objeto.
  • Sección media - Atributos de la clase - Los atributos describen las variables que describen las cualidades de la clase. Esto solo es necesario cuando se describe una instancia específica de una clase.
  • Sección inferior - Operaciones de clase (métodos) - Mostradas en formato de lista, cada operación toma su propia línea. Las operaciones describen cómo una clase puede interactuar con los datos.

Modificador de acceso de miembro


Todas las clases tienen diferentes niveles de acceso dependiendo del modificador de acceso (visibilidad). Estos son los siguientes niveles de acceso con sus símbolos correspondientes:

  • Público (+)
  • Privado (-)
  • Protegido (#)
  • Paquete (~)
  • Derivado (/)
  • Estático (subrayado)

Alcance del miembro



Hay dos ámbitos para los miembros: clasificadores e instancias. Los clasificadores son miembros estáticos mientras que las instancias son las instancias específicas de la clase. Si está familiarizado con la teoría básica de OO, esto no es nada innovador.


Interacciones objeto / clase en diagramas de clase

Las interacciones entre objetos y clases son una parte integral de los diagramas de clase.

Herencia


Herencia es cuando un objeto secundario asume todas las características de su objeto principal. Por ejemplo, si tuviéramos el vehículo objeto, un móvil Go-go de clase infantil heredaría todos los atributos (velocidad, número de pasajeros, combustible) y métodos (go (), stop (), changeDirection ()) de la clase padre además de los atributos específicos (modelType, # of doors, autoMaker) y métodos de su propia clase (Radio (), windshieldWiper (), ac / heat ()). La herencia se muestra en un diagrama de clase al usar una línea continua con una flecha hueca cerrada.

Asociaciones bidireccionales


Las asociaciones bidireccionales son las asociaciones predeterminadas entre dos clases y están representadas por una línea recta entre dos clases. Ambas clases están conscientes la una de la otra y de su relación entre ellas. En el ejemplo anterior, la clase móvil Go-go y la clase RoadTrip están interrelacionadas. En un extremo de la línea, el móvil Go-go asume la asociación de "assignedCar" con el valor de multiplicidad de 0..1, lo que significa que cuando existe la instancia de RoadTrip, puede tener asociada una instancia de Go-go mobile. con o sin Go-Go móviles asociados con él. En este caso, se necesita una clase Caravan por separado con un valor de multiplicidad de 0 .. * para demostrar que un RoadTrip podría tener múltiples instancias de móviles Go-go asociados. Dado que una instancia móvil de Go-go podría tener múltiples "

Asociación unidireccional




Una asociación unidireccional se dibuja como una línea continua con una punta de flecha abierta que apunta desde la clase que conoce a la clase conocida. En este caso, en su viaje por Arizona, puede encontrarse con una trampa de velocidad donde una cámara de velocidad registra su actividad de manejo, pero no lo sabrá hasta que reciba una notificación por correo. No se dibuja en la imagen, pero en este caso el valor de multiplicidad sería 0 .. * según la cantidad de veces que conduzca por la velocidad de la cámara.


Aplicaciones de Diagrama de Clase

Los diagramas de clases tienen una serie de beneficios para cualquier organización. Intenta usarlos para:


  • Ilustrar modelos de datos para sistemas de información.
  • Comprenda la descripción general de los esquemas de una aplicación.
  • Exprese las necesidades de un sistema y difunda esa información en todo el negocio.
  • Cree gráficos detallados que se centren en el código de programación necesario para implementar la estructura descrita.
  • Proporcione una descripción independiente de la implementación de los tipos utilizados en un sistema y pasados ​​entre sus componentes.


Componentes del Diagrama de Clase

Dependiendo del contexto, las clases en un diagrama de clase pueden representar los objetos principales, las interacciones en la aplicación y las clases que se programarán. Para responder a la pregunta "¿Qué es un diagrama de clases en UML?", Primero debes entender su composición básica .


  • Clases : una plantilla para crear objetos y ejecutar comportamientos en un sistema. En UML, una clase representa un objeto o un conjunto de objetos que comparten una estructura y un comportamiento comunes. Están representados con un rectángulo que incluye filas del nombre de clase, sus atributos y sus operaciones. Al dibujar un diagrama de clases en un diagrama de clases, solo se debe completar la fila superior; las otras son opcionales si desea proporcionar más detalles.
  1. Nombre: la primera fila en forma de clase.
  2. Atributos: la segunda fila en forma de clase. Cada atributo de la clase se muestra en una línea separada.
  3. Métodos: la tercera fila en forma de clase. También conocidas como operaciones, se muestran en formato de lista con cada operación en su propia línea.


  • Señales : símbolos que representan comunicaciones asincrónicas unidireccionales entre objetos activos.
  • Tipos de datos : clasificadores que definen valores de datos. Los tipos de datos pueden modelar tanto tipos primitivos como enumeraciones.
  • Paquetes : esta forma que contiene está diseñada para organizar clasificadores relacionados en un diagrama. Está simbolizado con una forma de rectángulo grande con pestañas.
  • Interfaces : similar a una clase, excepto que una clase puede tener una instancia de su tipo, y una interfaz debe tener al menos una clase para implementarla.
  • Enumeraciones : representaciones de tipos de datos definidos por el usuario. Una enumeración incluye grupos de identificadores que representan valores de la enumeración.
  • Objetos : instancias de una clase o clases. Los objetos se pueden agregar a un diagrama de clases cuando representan instancias concretas o prototípicas.
  • Artefactos : elementos del modelo que representan entidades concretas en un sistema de software, como documentos, bases de datos, archivos ejecutables, componentes de software, etc.
  • Interacciones : un término para las diversas relaciones y enlaces que pueden existir en los diagramas de clases y objetos. Algunas de las interacciones más comunes incluyen:


  1. Herencia: también conocida como generalización, es el proceso de un niño o subclase que asume la funcionalidad de un padre o una superclase. Está simbolizado por una línea recta conectada con una punta de flecha cerrada que apunta hacia la superclase.
  2. Asociación bidireccional: la relación predeterminada entre dos clases; ambas clases se conocen entre sí y su relación con el otro. Esta asociación está representada por una línea recta entre dos clases.
  3. Asociación unidireccional: una relación ligeramente menos común entre dos clases; una clase es consciente de la otra e interactúa con ella. La asociación unidireccional se modela con una línea de conexión directa que señala una punta de flecha abierta desde la clase que conoce a la clase conocida.

No hay comentarios:

Publicar un comentario

¿Qué es UML?

Historia UML  El lenguaje unificado de modelado (UML, por sus siglas en inglés,  Unified Modeling Language ) es el lenguaje de...