Buscar

Anexo Aula6 - DiagClasses

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 21 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 21 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 21 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Diagrama de Classes 
• Diagrama de Classes Conceitual 
(negócios) e de projeto = mesmo modelo 
. Abrange as Fases de Análise e Projeto 
. Modelagem de classes e seus relacionamentos. 
• Diagrama de Classes 
. Conta Corrente . Correntista . Lançamento 
Analisando os casos de uso, 
podemos identificar 
classes e atributos. 
• Diagrama de Classes 
. Conta Corrente . Correntista . Lançamento 
Vamos modelar 
as classes e atributos ? 
• Diagrama de Classes 
. Conta Corrente . Correntista . Lançamento ContaCorrente 
numero 
agencia 
dataAbertura 
senha 
... 
abrirConta() 
bloquearConta() 
validarSenha(senha) 
... 
Correntista 
nome 
cpf 
endereco 
dataNascimento 
... 
cadastrar() 
... 
Lancamento 
data 
tipo 
valor 
numDocumento 
... 
lancar() 
listarLancamen 
 tos(periodo) 
... 
Primeira abstração: Atributos 
Modelagem evolui: Operações 
• Diagrama de Classes 
ContaCorrente 
numero 
agencia 
dataAbertura 
senha 
... 
abrirConta() 
bloquearConta() 
validarSenha(senha) 
... 
Correntista 
nome 
cpf 
endereco 
dataNascimento 
... 
cadastrar() 
... 
Lancamento 
data 
tipo 
valor 
numDocumento 
... 
lancar() 
listarLancamen 
 tos(periodo) 
... 
As classes não vivem sozinhas... 
precisamos estabelecer 
seus relacionamentos !!! 
• Diagrama de Classes 
ContaCorrente Correntista 
Lancamento 
Relacionamento 
de Associação 
Relacionamento 
de Agregação 
Nas abstrações de níveis 
mais baixos, não precisamos 
trabalhar com todos os elementos. 
Diagrama de Classes 
• O que se define sobre uma classe 
(elementos mínimos. 
– Nome, Atributos e Métodos 
– Visibilidade: Atributos e Métodos 
– Relacionamentos entre classes do sistema 
– Multiplicidade = quantidade de objetos que 
participam do relacionamento entre classes. 
 
Diagrama de Classes 
• Multiplicidade 
– Mostra a quantidade de instâncias (objetos) 
possíveis em 1 relacionamento. 
• * - muitos 
• 0..1 - opcional 
• 1 ou 1..1 – exatamente 1 
• * ou 0..* - nenhum ou muitos 
• 1..* - pelo menos 1 
 
Diagrama de Classes 
• Sob a ótica da OO um sistema é um conjunto de objetos 
que interagem (trocam mensagens) 
• A Classe é uma abstração de objetos 
• Logo as Classes identificadas na solução de um 
problema devem se relacionar. As relações possíveis 
são: 
– Associação 
• Associação exclusiva 
– Classe de Associação 
– Generalização / especialização 
– Agregação 
– Composição 
– Dependência 
Relacionamento entre classes 
• Associação 
– Conecta 1 (auto associação), 2 (binária) ou 
mais (ternária ou ordem N) classes, 
demonstrando a colaboração entre instâncias 
(objetos) de classes. 
– Denota relacionamento entre classes não 
correlatas e independentes. Ao acabar o 
relacionamento, as 2 classes permanecem 
com suas vidas próprias. 
Relacionamento entre classes 
• Associação 
– Binária = objetos de 2 classes relacionam-se 
• As 2 classes existem, independente de se 
associarem ou não. 
– Uma associação pode ter: 
• Navegabilidade: se omitida, é bidirecional 
• Nome (faz) – pode vir com seta de direção 
• Papel (role): papel da classe na associação 
Aluno 
 
0..* FAZ 0..* 
Disciplina 
 
Relacionamento entre classes 
 
 
 
 
Disciplina 
 
Pré-requisito 
• Unária = objetos da mesma classe 
• Associação exclusiva: é uma restrição em 2 ou 
mais associações. 
• Objetos de 1 classe podem participar de no 
máximo 1 das associações, a cada momento 
Relacionamento entre Classes 
• Classe de Associação: 
– Uma associação, entre 2 classes, pode requerer atributos / 
métodos para ser descrita (possui elementos próprios). 
• Ela gera uma Classe com propriedades específicas, que carecem 
de modelagem à parte (3a. Classe) 
– Os atributos Data empréstimo e data de devolução não são nem da 
classe sócio e nem da classe Fita. São referentes ao ato de emprestar, 
que gera a classe de associação (só acontece quando um sócio 
“associa-se” a uma fita, pegando-a emprestada) EMPRESTIMO. 
 
Fita Sócio 
Empréstimo 
 Relacionamento entre classes 
• Generalização normal (herança) 
– Define uma hierarquia de classes que modela 
relacionamento “é um tipo de”. 
– Atributos e operações da SuperClasse 
(comum) são herdados pela Sub-Classe (+ 
específica) 
– A funcionalidade comum a diversas classes 
deve ser posicionada o mais alto possível na 
hierarquia. 
Relacionamento entre Classes 
• Generalização (herança) normal 
– Formas de representação 
Imposto 
 
DARF 
 
 ISS 
 
DARF A 
 
DARF B 
 
Pessoa 
 
Cliente 
 
Fornecedor 
 
Funcionário 
 
Generalização 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Especialização 
• Generalização Restrita 
– Sub-classes podem ocorre simultaneamente 
(sobreposição) ou mutuamente exclusivas 
(disjunção) com relação à mesma superclasse. 
– Alto nível de detalhe, porém importante para o 
programador. 
Pessoa 
Aluno Professor 
Sobreposição 
 
Pessoa 
Homem Mulher 
Disjunção 
Relacionamento entre classes 
Relacionamento entre classes 
• Agregação e Composição 
– Tipo especial de associação (todo-parte) 
– Usado para descrever componentes que 
fazem parte de uma estrutura 
• 1 das classes do relacionamento é uma parte ou 
está contida em outra classe. 
• “consiste em”, “contém”, “é parte de “ 
– A composição é mais física, é mais forte, pois 
denota uma maior dependência entre o 
TODO e suas partes. 
Relacionamento entre classes 
• Agregação 
– 3 Questões, que indicam a agregação. Não 
necessariamente todas tem q ser V. 
• 1. O Objeto TODO pode existir sem as partes 
• 2. Um parte pode ser agregar com mais de 1 TODO, ao 
mesmo tempo. 
• 3. Geralmente é uma relação homogênea (partes 
semelhantes). 
– Pode ter multiplicidade N:N. 
Prova 
 
Questões 
 
Depto 
 
Funcionários 
 
Relacionamento entre classes 
Relacionamento entre classes 
• Composição 
– É uma agregação mais poderosa . 
• Onde as PARTES “estão contidas” (vivem) dentro do TODO – vida 
coincidente. A parte perde a identidade. 
• Sem o TODO as Partes não fazem sentido (dependência) 
– Multiplicidade: N só no lado das partes. 
Relacionamento entre classes 
• Composição

Outros materiais