A principal diferença entre o diagrama de classes e o diagrama de objetos é que o diagrama de classes representa as classes e seus relacionamentos entre elas, enquanto o diagrama de objetos representa os objetos e seus relacionamentos entre eles em um determinado momento.
UML significa Linguagem de Modelagem Unificada. Ajuda a modelar os conceitos orientados a objetos para desenvolver soluções de software. Os diagramas UML fornecem várias vantagens, como entender os requisitos de negócios e obter um entendimento de alto nível das funcionalidades do sistema. Existem dois tipos principais de modelagem UML. Eles são modelagem estrutural e modelagem comportamental. A modelagem estruturada descreve os recursos estáticos do sistema. Por outro lado, a modelagem comportamental descreve a natureza dinâmica do sistema. O diagrama de classes e o diagrama de objetos são dois diagramas UML de modelagem estrutural.
CONTEÚDO
1. Visão geral e diferença chave
2. O que é Diagrama de Classes
3. O que é diagrama de objetos
4. Comparação Lado a Lado – Diagrama de Classes vs Diagrama de Objetos em Forma Tabular
5. Resumo
O que é Diagrama de Classes?
Um diagrama de classes representa uma visão estática do sistema. Ele descreve os atributos e operações das classes. Os diagramas de classes são o diagrama de modelagem mais amplamente utilizado para sistemas orientados a objetos porque podem ser mapeados diretamente com linguagens orientadas a objetos.
Figura 01: Diagrama de Classes
Acima está um exemplo simples de um diagrama de classes. É um sistema de pedidos online. User, Customer, Administrator, Order, OrderDetails são classes. Cada classe consiste em atributos e métodos. Os atributos descrevem as propriedades enquanto os métodos descrevem os comportamentos ou operações.
Em um diagrama de classes, um retângulo representa a classe. Ele ainda se divide em três seções. A seção superior é escrever o nome da classe. A seção do meio é para atributos e a última seção é para métodos. A classe Customer possui atributos como nome, endereço, email, customerId, accountBalance e métodos como cadastro, login e compra.
Atributos e Métodos
Os atributos e métodos possuem um símbolo para indicar a visibilidade. O – representa privado. As outras classes não podem acessar os membros privados. Eles são visíveis apenas para essa classe específica. O + representa público e outras classes podem acessar esses membros. Normalmente, os atributos de classe são privados e os métodos são públicos. Há outra visibilidade. Isso é chamado de protegido e o símbolo # o representa. Somente os mesmos membros de classe e subclasse podem acessar os membros protegidos.
O Usuário é a forma generalizada de Administrador e Cliente. Essas duas classes podem ter os atributos e métodos da classe de usuário, bem como seus próprios atributos e métodos. A classe User é a classe pai, enquanto as classes Customer e Administrator são as classes filhas. Esse conceito é chamado de Generalização.
O Cliente e o Pedido têm a relação de composição. A classe Order não pode existir sem a classe Customer. O Order e OrderDetails têm o relacionamento de composição. Portanto, a classe OrderDetails não pode existir sem a classe Order.
O diagrama de classes também representa multiplicidade. Ao se referir à relação Cliente e Pedido, o cliente pode ter zero ou muitos pedidos. Por outro lado, um pedido pertence apenas a um cliente. O pedido e OrderDetails têm um relacionamento de 1 para 1. Um pedido pode ter apenas um OrderDetails. Esses são alguns conceitos básicos de Diagramas de Classes.
O que é Diagrama de Objetos?
Outro diagrama estrutural é um diagrama de objetos. É semelhante a um diagrama de classes, mas se concentra em objetos. Os conceitos básicos do diagrama de objetos são semelhantes aos de um diagrama de classes. Esses diagramas ajudam a entender o comportamento do objeto e suas relações em um determinado momento.
Figura 02: Diagrama de Objetos
Os objetos s1, s2 e s3 são alunos e se inscrevem no objeto de curso c1. O objeto palestrante l1 ministra o curso c1. O professor objeto l2 ministra o curso especial c2. O aluno s3 se matricula no curso c1 e no curso especial c2. Este diagrama ilustra como um conjunto de objetos se relaciona entre si. Em geral, um diagrama de objetos representa a visão estática de um sistema, mas especificamente, representa uma visão estática do sistema em um determinado momento.
Qual é a diferença entre diagrama de classes e diagrama de objetos?
Um diagrama de classes é um tipo de diagrama estrutural estático que descreve a estrutura do sistema mostrando as classes, seus atributos, métodos e o relacionamento entre as classes. Um diagrama de objetos também é um tipo de diagrama estrutural estático que mostra uma visão completa ou parcial da estrutura de um sistema modelado em um momento específico.
Além disso, os diagramas de classes definem as classes e mostram como elas se relacionam umas com as outras. Os diagramas de objetos mostram os objetos e seus relacionamentos. As classes são os blueprints e os objetos são as instâncias das classes. Esta é a principal diferença entre o diagrama de classes e o diagrama de objetos.
Além disso, em um diagrama de classes, o nome da classe começa com letras maiúsculas. ex., estudante. Em um diagrama de objetos, o nome do objeto está em letras minúsculas e está sublinhado. por exemplo, s1: Aluno
Resumo – Diagrama de Classes vs Diagrama de Objetos
Os diagramas de classe e de objeto representam recursos estáticos de um sistema. A diferença entre o diagrama de classes e o diagrama de objetos é que o diagrama de classes representa as classes e seus relacionamentos entre elas, enquanto o diagrama de objetos representa os objetos e seus relacionamentos entre eles em um determinado momento. Esses diagramas ajudam a obter uma compreensão de alto nível do sistema.
Referência:
1.“Linguagem de Modelagem Unificada (UML) | Diagramas de Objetos.” GeeksforGeeks, 13 de fevereiro de 2018. Disponivel aqui
2.Ponto de Tutoriais. “UML – Diagrama de Classes.” Ponto de tutoriais8 de janeiro de 2018. Disponivel aqui
3.Ponto de Tutoriais. “UML – Diagramas de Objetos.” Ponto de tutoriais8 de janeiro de 2018. Disponivel aqui