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
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, onde uma classe faz
parte da outra
 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 Avaliativo –
Represente, por meio de um diagrama de
classes, o fato de uma empresa possuir
diversos departamentos, em cada um
destes
estão
lotados
diversos
funcionários. Cada departamento possui
um chefe que também deve ser lotado no
respectivo departamento.
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
Exercício Avaliativo –
3,0
Uma loja que vende roupas possui um
sistema capaz de controlar a venda e o
estoque. Cada roupa possui um código
de barras, um tamanho e o número de
exemplares que a loja possui daquela
roupa.
Os clientes da loja são cadastrados pelo
nome
Faça um diagrama de classe.
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
Técnico Subsequente
Exercício Avaliativo –
2,0 pontos
Desenvolva o Diagrama de Classes para um sistema de
cursos de informática equivalente ao módulo de matrícula de
acordo com os seguintes fatos:
• Um curso pode ter muitas turmas, no entanto, uma turma se
relaciona exclusivamente com um único curso.
• Uma turma pode ter diversos alunos matriculados, no
entanto uma matrícula refere-se exclusivamente a uma
determinada turma. Cada turma tem um número mínimo de
matrículas para iniciar o curso.
• Um aluno pode realizar muitas matrículas, mas cada
matrícula refere-se exclusivamente a uma turma específica e
a um único aluno.
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
INSTITUTO FEDERAL DE
EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
TOCANTINS
Campus Araguaína
Técnico Subsequente
Download

Diagrama de Classes