DIAGRAMA DE CLASSES
George Gomes Cabral
DIAGRAMA DE CLASSES



Em POO , os problemas de programação são pensados
em termos de objetos , nada de funções , rotinas.
Desta forma quando é colocado o problema de
desenvolver um sistema para locadoras , por exemplo
, devemos pensar como dividir o problema em objetos.
Para este caso podemos ter os seguintes objetos:
Clientes , CDs e Fitas ,etc.
"Um objeto é um termo que usamos para representar
uma entidade do mundo real" (Fazemos isto através
de um exercício de abstração.)
DIAGRAMA DE CLASSES


Podemos descrever o cachorro Bilú em termos de
seus atributos físicos: é pequeno , sua cor
principal é castanha , olhos pretos , orelhas
pequenas e caídas, rabo pequeno , patas brancas.
Podemos também descrever algumas ações que
ele faz (temos aqui os métodos) : balança o rabo,
foge e se deita se o mando sair debaixo da mesa,
late quando ouve um barulho ou vê um cão ou
gato, atende e corre quando o chamamos pelo seu
nome.
DIAGRAMA DE CLASSE

Temos aqui a representação do cachorro
Bilú:

Propriedades : [Cor do corpo :
castanha cor dos olhos : preto altura: 18
cm comprimento: 38 cm largura : 24 cm]

Métodos : [balançar o rabo , latir , deitar ,
sentar ].
DIAGRAMA DE CLASSES
Uma classe representa um conjunto de objetos
que possuem comportamentos e características
comuns.
 Uma classe descreve como certos tipos de objetos
se parecem do ponto de vista da programação ,
pois quando definimos uma classe precisamos
definir duas coisas:

Propriedades - Informações específicas relacionadas
a uma classe de objeto. São as características dos
objetos que as classes representam. Ex Cor , altura ,
tamanho , largura , etc...
 Métodos: São ações que os objetos de uma classe
podem realizar. Ex: Latir , correr , sentar , comer, etc.

DIAGRAMA DE CLASSES

A representação de uma classe usa um retângulo
dividido em três partes:
DIAGRAMAS DE CLASSES


Os diagrama se classes ilustram atributos e
operações de uma classe e as restrições como que
os objetos podem ser conectados ; descrevem
também os tipos de objetos no sistema e os
relacionamentos entre estes objetos
Para poder representar a visibilidade dos
atributos e operações em uma classe utiliza-se as
seguintes marcas e significados:
+ público - visível em qualquer classe
 # protegido - qualquer descendente pode usar
 - privado - visível somente dentro da classe

DIAGRAMA DE CLASSES

Relacionamentos entre classes:
Associações : Agregação e composição
 Generalização (herança)
 Dependências


Herança:

Um dos princípios da OO, permite a reutilização.
Uma classe pode ser definida a partir de outra já
existente
DIAGRAMA DE CLASSES

Relação é um…
Forma
uma Forma pode ser um
Círculo, um Rectângulo
ou uma FormaComposta
Círculo
Rectângulo
FormaComposta
DIAGRAMA DE CLASSES
Uma associação é um vínculo que permite que objetos
de uma ou mais classes se relacionem.
 Não há conceito de posse
 Os tempos de vida dos objetos ligados entre si são
independentes.
 As associações podem ser:

unárias - quando a associação ocorre entre objetos de uma
mesma classe.
 binárias - quando a associação ocorre entre dois objetos de
classes distintas.

DIAGRAMA DE CLASSES
Língua natural
"Qualquer empregado é chefiado por no máximo um chefe."
UML
Empregado
empregados
*
chefe
Chefia
0..1
Chefe
DIAGRAMA DE CLASSES

Agregação

Uma agregação representa um
todo que é composto de várias
partes. Exemplo: um conselho é
um agregado de membros, da
mesma forma que uma reunião é
um agregado de uma pauta e de
participantes. A implementação
deste relacionamento não é uma
contenção, pois uma reunião não
CONTÉM participantes. Assim
sendo, as partes da agregação
podem fazer outras coisas em
outras partes da aplicação.
DIAGRAMA DE CLASSES
Língua natural
"Uma empresa possui um número arbitrário de veículos."
UML
- frota
Empresa
0..1
*
Veículo
DIAGRAMA DE CLASSES

Composição

A composição, diferentemente da agregação, é um
relacionamento de contenção. Um objeto (container)
CONTÉM outros objetos (elementos). Esses
elementos que estão contidos dentro de outro objeto
dependem dele para existir. Um exemplo de
container poderia ser uma nota fiscal, e seus
elementos seriam seus itens. Não faz sentido
existirem itens de nota fiscal sem existir uma nota
fiscal onde tais itens estariam contidos. E
DIAGRAMA DE CLASSES
Língua natural
"Um humano é composto por uma cabeça e dois braços."
UML
Humano
Cabeça
1
Braço
2
DIAGRAMA DE CLASSES
EXERCÍCIO
Download

Diagrama de Classes