DIAGRAMA DE CLASSE
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
Médio Integrado
Diagrama de Classes
•
•
•
•
Revisando...
Introdução – Diagrama de classes
Elementos do diagrama de classes
Exemplo: Sistema de matrícula
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Introdução –
Diagrama de Classes
• Mostra um conjunto de classes e seus
relacionamentos.
• É o diagrama central da modelagem orientada a
objetos.
Turma
está-matriculado-em
Aluno
nome: Texto
matrícula: Inteiro
definirNome(nome)
obterNome()
definirMatricula(matricula)
obterMatricula
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
código: Texto
sala: Texto
horario: Horario
estaAberta()
definirProfessor(professor)
incluirAluno(aluno)
é-ministrada-por
Professor
nome: Texto
titulação: Texto
definirNome(nome)
obterNome()
definirTitulacao(titulo)
obterTitulacao
© LES/PUC-Rio
Elementos –
Diagrama de Classes
• Elementos de um diagrama de classes
 Classes
 Relacionamentos
• Associação
 Agregação
 Composição
• Generalização
• Dependência
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Elementos –
Diagrama de Classes
• Elementos de um diagrama de classes
 Classes
 Relacionamentos
• Associação
 Agregação
 Composição
• Generalização
• Dependência
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Elementos –
Diagrama de Classes
Classes
• Graficamente, as classes são representadas por
retângulos incluindo nome, atributos e métodos.
Nome_da_classe
atributo1
atributo2
...
metodo1
metodo2
metodo3
...
• Devem receber nomes de acordo com o
vocabulário do domínio do problema.
• É comum adotar um padrão para nomeá-las
Ex: todos os nomes de classes serão substantivos
singulares com a primeira letra maiúscula
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Elementos –
Diagrama de Classes
Classes
• Atributos
Funcionario
 Representam o conjunto de características
(estado) dos objetos daquela classe
 Visibilidade:
+ público: visível em qualquer classe de
qualquer pacote
# protegido: visível para classes do mesmo
pacote
- privado: visível somente para classe
- codigo: int
+nome:String
- cpf: int
#salario: float
+ Gravar()
+ Alterar()
+ Excluir()
Exemplo:
+ nome : String
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Elementos –
Diagrama de Classes
Classes
• Métodos
 Representam o conjunto de operações (comportamento)
que a classe fornece
 Visibilidade:
+ público: visível em qualquer classe de qualquer pacote
# protegido: visível para classes do mesmo pacote
- privado: visível somente para classe
Exemplo:
- getNome() : String
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Atividade...
• Possuímos 2 classes, ClasseA e ClasseB. Ambas estão com as
operações(métodos) definidas como pública. O que significa isso?
• Qual visibilidade devemos definir para que a operação2 e a operação3
fiquem visíveis apenas para a própria classe?
• Qual visibilidade (diferente de pública) devemos definir para que a
operação1 fique visível para a ClasseC?
ClasseA
- atributo1:int
- atributo2:int
- atributo1:int
- atributo2:int
+ operacao1( )
+ operacao2( )
+ operacao1( )
+ operacao3( )
ClasseC
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
ClasseA
Exemplo prático
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
Técnico Subsequente
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
Técnico Subsequente
Elementos –
Diagrama de Classes
• Elementos de um diagrama de classes
 Classes
 Relacionamentos
• Associação
 Agregação
 Composição
• Generalização
• Dependência
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Elementos –
Diagrama de Classes
Relacionamentos
•
Os relacionamentos possuem:
 Nome: descrição dada ao relacionamento (faz, tem, possui,...)
 Sentido de leitura
 Multiplicidade: 0..1, 0..*, 1, 1..*, 2, 3..7
 Tipo: associação (agregação, composição), generalização e dependência
 Papéis: desempenhados por classes em um relacionamento
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Elementos –
Diagrama de Classes
(Multiplicidade)
• Relacionamentos
Especifica o número de objetos
de cada classe envolvidos com a
associação
nome
multiplicidade
Pessoa
1..*
sentido de leitura
trabalha para
empregado
*
empregador
Empresa
Tipo: associação
papéis
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Elementos –
Diagrama de Classes
• Elementos de um diagrama de classes
 Classes
 Relacionamentos
• Associação
 Agregação
 Composição
• Generalização
• Dependência
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Elementos –
Diagrama de Classes
Relacionamentos: Associação
• Uma associação é um relacionamento
estrutural que indica que os objetos de uma
classe estão vinculados a objetos de outra
classe.
• Uma associação é representada por uma linha
sólida conectando duas classes.
Pessoa
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
Empresa
associação
© LES/PUC-Rio
Elementos –
Diagrama de Classes
Relacionamentos: Associação
•
Indicadores de multiplicidade:
(Multiplicidade)
 1
Exatamente um
 1..*
Um ou mais
 0..*
Zero ou mais (muitos)
 *
muitos
 0..1
Zero ou um
 m..n
Faixa de valores (por exemplo: 4..7)
Especifica o número de objetos
de cada classe envolvidos com a
associação
multiplicidade
Aluno
0..*
Estuda apenas em
0..1
Curso
associação
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Relacionamentos:
Associação
Relacionamentos: Associação
Exemplo:
•
Um Estudante pode ser
um aluno de uma Disciplina e
um jogador da Equipe de Futebol
•
Cada Disciplina deve ser cursada por no mínimo 1 aluno
•
Um aluno pode cursar de 0 até 8 disciplinas
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Elementos –
Diagrama de Classes
• Elementos de um diagrama de classes
 Classes
 Relacionamentos
• Associação
 Agregação
 Composição
• Generalização
• Dependência
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Elementos –
Diagrama de Classes
• Relacionamento: Agregação
 É um tipo especial de associação
 Utilizada para indicar “todo-parte”
todo
parte
Pedido
1
1..*
Item
agregação
 um objeto “parte” pode fazer parte de vários objetos “todo”
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Elementos –
Diagrama de Classes
• Elementos de um diagrama de classes
 Classes
 Relacionamentos
• Associação
 Agregação
 Composição
• Generalização
• Dependência
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Elementos –
Diagrama de Classes
• Relacionamento: Composição
 É uma variante semanticamente mais “forte” da agregação
 A composição não vive sem o todo
• Exemplo
Dependentes é parte de pessoa
Dependentes
*
Nome
Data de nascimento
1
Pessoa
Nome
Fone
Email
*
1
listaEmprego():String
Composição
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
Emprego
Nome
Area
Salário
calculaBonus():String
Agregação
© LES/PUC-Rio
Elementos –
Diagrama de Classes
• Elementos de um diagrama de classes
 Classes
 Relacionamentos
• Associação
 Agregação
 Composição
• Generalização
• Dependência
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Elementos –
Diagrama de Classes
• Relacionamento: Generalização
• É um relacionamento entre itens gerais (superclasses)
e itens mais específicos (subclasses)
Veículo
superclasse
“é um”
“é um tipo de”
subclasse
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
Terrestre
Aéreo
© LES/PUC-Rio
Elementos –
Diagrama de Classes
• Elementos de um diagrama de classes
 Classes
 Relacionamentos
• Associação
 Agregação
 Composição
• Generalização
• Dependência
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Elementos –
Diagrama de Classes
• Relacionamento: Dependência
• Representa que a alteração de um objeto (o objeto
indepedendente) pode afetar outro objeto (o objeto
dependente)
Ex:
cliente
fornecedor
Obs:
• A classe cliente depende de algum serviço da classe fornecedor
• A mudança de estado do fornecedor afeta o objeto cliente
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
© LES/PUC-Rio
Exercício
• Crie o diagrama de classes de acordo
com o diagrama de caso de uso
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
Download

Diagrama de Classes