22
Diagrama de Classes

Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Embed Size (px)

Citation preview

Page 1: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

Page 2: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

O que é uma classe?

Page 3: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Definições

• Objeto: Entidade que possa ser descrita de uma realidade.

• Classe: abstração que define um objeto• Instância: criação de objeto a partir de uma

classe.

Refrigerante

Cola Guaraná Laranjada

Coca-Cola Pepsi

Page 4: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Relacionamento

Diagrama de ClassesDefinem as regras

Digramas UMLRealidade do Modelo

CódigoGera Objetos

Dão suporte

RepresentaGera

Conforme

Page 5: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Representação de uma Classe

Nome da Classe Nome da Classe

Lista de Atributos

Nome da Classe

Lista de Atributos

Lista de Operações

Nome da Classe

Lista de Operações

Page 6: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Exemplos

ContaBancaria ContaBancaria

númerosaldodataAbertura

ContaBancaria

númerosaldodataAbertura

criar()bloquear()desbloquear()creditar()debitar()

Page 7: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Nome da Classe:– O nome da classe é muito importante para

identificar um recurso do modelo. Deve ser claro, descrever o tipo de objeto representado e na linguagem mais fácil possível.

– Deve corresponder ao padrão adotado na empresa: espaços viram “_” ou sem espaço?

– O nome da classe será usado para a programação.

– O nome da Classe deve ser único no pacote.

Page 8: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Nome da Classe:– Maus exemplos:

– Bons exemplos

ShowsProgramados ShowsCancelados

Shows

-situacao: SituacaoShow

Shows

-situacao: SituacaoShow-confirmado: booleano

Page 9: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Atributos– Definem as características que os objetos

possuem.– Podem definir características de si mesmo,

mostrar consciência das suas relações e pode controlar uma certa informação.

Page 10: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Atributos: Notação

[visibilidade] [/] nome [:tipo] [multiplicidade] [=padrão] [{Propriedades}]

Exemplo:

- nome[1]: String = sem inicial,{Obrigatório, 1..30 caracteres, espaços e pontuação permitidos}

Derivação

Page 11: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Multiplicidade

Nome Simbologia

Apenas um 1

Zero ou muitos 0..*

Um ou muitos 1..*

Zero ou um 0..1

Intervalo específico li..lf (ex. 2..8)

Page 12: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Atributos: Notação[visibilidade] [/] nome [:tipo] [multiplicidade] [=padrão] [{Propriedades}]

- Define o escopo de acesso para um membro de uma classe. - Privado: na classe; (-)- Pacote: dentro do mesmo pacote (~)- Público: dentro de um sistema (+)- Protegido: dentro de uma árvore de herança. (#)

Derivação

Page 13: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Atributos: Notação

[visibilidade] [/] nome [:tipo] [multiplicidade] [=padrão] [{Propriedades}]

Derivação

Sistema

Classe A Classe B

Pacote 1

Classe C Classe D

Pacote 2 <<herança>>

Privado:O atributo privado só é acessível pelas operações do objeto. Normalmente este é oestado inicial dos atributos, depoisse necessário, pode ser modificado.

Page 14: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Atributos: Notação

[visibilidade] [/] nome [:tipo] [multiplicidade] [=padrão] [{Propriedades}]

Derivação

Sistema

Classe A Classe B

Pacote 1

Classe C Classe D

Pacote 2 <<herança>>

Pacote:O atributo pode ser acessado porqualquer outra classe no mesmo pacote.

Page 15: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Atributos: Notação

[visibilidade] [/] nome [:tipo] [multiplicidade] [=padrão] [{Propriedades}]

Derivação

Sistema

Classe A Classe B

Pacote 1

Classe C Classe D

Pacote 2 <<herança>>

Público:O atributo pode ser acessado porqualquer outra classe do sistema.

Page 16: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Atributos: Notação

[visibilidade] [/] nome [:tipo] [multiplicidade] [=padrão] [{Propriedades}]

Derivação

Sistema

Classe A Classe B

Pacote 1

Classe C Classe D

Pacote 2 <<herança>>

Protegido:O atributo só pode ser acessado poruma classe que tenha uma relação de generalização/herança, independente do pacote.

Page 17: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Atributos: Notação

[visibilidade] [/] nome [:tipo] [multiplicidade] [=padrão] [{Propriedades}]

- Derivação: indica que um valor é deduzido ou calculado na hora. Se ausente, indica um valor base.

Exemplo:

Derivação

Show

- nome- dataInicial- duracao- /dataFinal

Page 18: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Atributos: Notação

[visibilidade] [/] nome [:tipo] [multiplicidade] [=padrão] [{Propriedades}]

- Nome: é obrigatório e deve ser único dentro da classe. Seja o mais descritivo possível para evitar confusão.Exemplos: cadUsr x cadastraUsuario

Derivação

Page 19: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Atributos: Notação

[visibilidade] [/] nome [:tipo] [multiplicidade] [=padrão] [{Propriedades}]

- Tipo: Refere-se a qualidade de dados que serão tratados no atributo.- Podem ser padrão UML: (interger, unlimitedInterger

ou String)- Enumeração: booleano;- Algum padrão de linguagem: float, long, short,...- Ou até uma referência para outra classe.

Derivação

Page 20: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Atributos: Notação

[visibilidade] [/] nome [:tipo] [multiplicidade] [=padrão] [{Propriedades}]

Derivação

Nome Simbologia

Apenas um 1

Zero ou muitos 0..*

Um ou muitos 1..*

Zero ou um 0..1

Intervalo específico li..lf (ex. 2..8)

Page 21: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Atributos: Notação

[visibilidade] [/] nome [:tipo] [multiplicidade] [=padrão] [{Propriedades}]

-Padrão: refere-se ao valor inicial de um atributo, para proteger sua integridade ou facilitar preenchimento.

Derivação

Show

- nome- dataInicial- duracao- /dataFinal = dataInicial+duracao

Page 22: Diagrama de Classes. O que é uma classe? Definições Objeto: Entidade que possa ser descrita de uma realidade. Classe: abstração que define um objeto

Diagrama de Classes

• Atributos: Notação[visibilidade] [/] nome [:tipo] [multiplicidade] [=padrão] [{Propriedades}]

-Propriedades: serve para inserir qualquer informação que não é pertinente a nenhuma das seções anteriores. Normalmente são usadas para delimitar regras de integridade e são separados por vírgulas.

Ex.

Derivação

Show

- nome[1]: String =sem inicial, {Obrigatório, 1..30 caracteres}- dataInicial[1]: Calendário= sem inicial { Obrigatório, >hoje} - duracao[1]: Int= 1 { >0} - /dataFinal: Calendário= dataInicial+duracao