UML - Diagrama de Classe

O diagrama de classes é um diagrama estático. Ele representa a visão estática de um aplicativo. O diagrama de classes não é usado apenas para visualizar, descrever e documentar diferentes aspectos de um sistema, mas também para construir o código executável do aplicativo de software.

O diagrama de classes descreve os atributos e operações de uma classe e também as restrições impostas ao sistema. Os diagramas de classes são amplamente usados ​​na modelagem de sistemas orientados a objetos porque são os únicos diagramas UML, que podem ser mapeados diretamente com linguagens orientadas a objetos.

O diagrama de classes mostra uma coleção de classes, interfaces, associações, colaborações e restrições. Também é conhecido como diagrama estrutural.

Objetivo dos Diagramas de Classe

O objetivo do diagrama de classes é modelar a visão estática de um aplicativo. Os diagramas de classes são os únicos diagramas que podem ser mapeados diretamente com linguagens orientadas a objetos e, portanto, amplamente usados ​​no momento da construção.

Os diagramas UML, como o diagrama de atividades e o diagrama de sequência, podem fornecer apenas o fluxo de sequência do aplicativo, mas o diagrama de classes é um pouco diferente. É o diagrama UML mais popular na comunidade de codificadores.

O objetivo do diagrama de classes pode ser resumido como -

  • Análise e desenho da visão estática de uma aplicação.

  • Descreva as responsabilidades de um sistema.

  • Base para diagramas de componentes e implantação.

  • Engenharia direta e reversa.

Como desenhar um diagrama de classes?

Os diagramas de classes são os diagramas UML mais populares usados ​​para a construção de aplicativos de software. É muito importante aprender o procedimento de desenho do diagrama de classes.

Os diagramas de classes têm muitas propriedades a serem consideradas durante o desenho, mas aqui o diagrama será considerado de uma visão de nível superior.

O diagrama de classes é basicamente uma representação gráfica da visão estática do sistema e representa diferentes aspectos do aplicativo. Uma coleção de diagramas de classes representa todo o sistema.

Os seguintes pontos devem ser lembrados ao desenhar um diagrama de classe -

  • O nome do diagrama de classes deve ser significativo para descrever o aspecto do sistema.

  • Cada elemento e suas relações devem ser identificados com antecedência.

  • A responsabilidade (atributos e métodos) de cada classe deve ser claramente identificada

  • Para cada classe, um número mínimo de propriedades deve ser especificado, pois propriedades desnecessárias tornarão o diagrama complicado.

  • Use notas sempre que necessário para descrever algum aspecto do diagrama. No final do desenho, deve ser compreensível para o desenvolvedor / codificador.

  • Finalmente, antes de fazer a versão final, o diagrama deve ser desenhado em papel comum e retrabalhado tantas vezes quanto possível para corrigi-lo.

O diagrama a seguir é um exemplo de um sistema de pedidos de um aplicativo. Ele descreve um aspecto específico de todo o aplicativo.

  • Em primeiro lugar, o Pedido e o Cliente são identificados como os dois elementos do sistema. Eles têm um relacionamento de um para muitos porque um cliente pode ter vários pedidos.

  • A classe Order é uma classe abstrata e possui duas classes concretas (relacionamento de herança) SpecialOrder e NormalOrder.

  • As duas classes herdadas têm todas as propriedades da classe Order. Além disso, eles têm funções adicionais como dispatch () e receive ().

O seguinte diagrama de classes foi desenhado considerando todos os pontos mencionados acima.

Onde usar diagramas de classes?

O diagrama de classes é um diagrama estático e é usado para modelar a visão estática de um sistema. A visão estática descreve o vocabulário do sistema.

O diagrama de classes também é considerado a base para os diagramas de componentes e implantação. Os diagramas de classes não são usados ​​apenas para visualizar a visão estática do sistema, mas também para construir o código executável para a engenharia direta e reversa de qualquer sistema.

Geralmente, os diagramas UML não são mapeados diretamente com nenhuma linguagem de programação orientada a objetos, mas o diagrama de classes é uma exceção.

O diagrama de classes mostra claramente o mapeamento com linguagens orientadas a objetos, como Java, C ++, etc. Com base na experiência prática, o diagrama de classes é geralmente usado para fins de construção.

Resumindo, pode-se dizer que os diagramas de classes são usados ​​para -

  • Descrevendo a visão estática do sistema.

  • Mostrando a colaboração entre os elementos da visão estática.

  • Descrever as funcionalidades realizadas pelo sistema.

  • Construção de aplicações de software usando linguagens orientadas a objetos.