Diagrama de Classes Prof Lus Fernando Garcia LUISGARCIA

  • Slides: 32
Download presentation
Diagrama de Classes Prof. Luís Fernando Garcia LUIS@GARCIA. PRO. BR – 2014/1

Diagrama de Classes Prof. Luís Fernando Garcia LUIS@GARCIA. PRO. BR – 2014/1

Diagrama de Classes • Diagrama mais • IMPORTANTE e UTILIZADO •

Diagrama de Classes • Diagrama mais • IMPORTANTE e UTILIZADO •

Diagrama de Classes • Visa permitir a visualização das classes que comporão o sistema

Diagrama de Classes • Visa permitir a visualização das classes que comporão o sistema junto com os respectivos atributos e métodos, bem como mostrar como as classes se relacionam, complementam e transmitem informações entre si. . .

Diagrama de Classes • • • Visão ESTÁTICA das classes Estrutura lógica das classes

Diagrama de Classes • • • Visão ESTÁTICA das classes Estrutura lógica das classes Serve de base para os demais. . .

Diagrama de Classes • Composto por: • Classes • Associações – Relacionamento entre as

Diagrama de Classes • Composto por: • Classes • Associações – Relacionamento entre as classes • “Idéia” do diagrama “E-R”

Diagrama de Classes • PERSISTÊNCIA • Visa preservar de maneira permanente os objetos de

Diagrama de Classes • PERSISTÊNCIA • Visa preservar de maneira permanente os objetos de uma classe – “gravar em disco” Nem toda classe é/precisa ser persistente. . . • • Necessário explicitamente definir através de um estereótipo/restrição. . . • Diagrama de classe Esquema lógico BD

Diagrama de Classes • CLASSES, ATRIBUTOS E MÉTODOS • Atributos – Armazenam os “dados”

Diagrama de Classes • CLASSES, ATRIBUTOS E MÉTODOS • Atributos – Armazenam os “dados” dos objetos Métodos – Funções que uma instância da classe pode executar •

Diagrama de Classes • CLASSES, ATRIBUTOS E MÉTODOS • “+” = Visibilidade pública –

Diagrama de Classes • CLASSES, ATRIBUTOS E MÉTODOS • “+” = Visibilidade pública – pode ser utilizado por qq classe “#” = Visibilidade protegida – somente a própria classe ou suas subclasses podem ter acesso “-” = Visibilidade privada – Somente a classe possuidora do atributo poderá utilizá-lo • •

Diagrama de Classes • RELACIONAMENTOS • As classes costumam ter relacionamentos entre si com

Diagrama de Classes • RELACIONAMENTOS • As classes costumam ter relacionamentos entre si com o intuito de compartilhar informações e colaborarem umas com as outras para permitir a execução dos processos. . . • Associações Especialização/Generalização Dependência Realização • • •

Diagrama de Classes • ASSOCIAÇÕES • Descreve um vínculo que ocorre normalmente entre duas

Diagrama de Classes • ASSOCIAÇÕES • Descreve um vínculo que ocorre normalmente entre duas classes (binária), entre uma classe com ela mesma (unária) e entre várias classes (ternária/Nária) • Determinam-se que instâncias de uma classe estão de alguma forma ligadas às instâncias de outra classe – podendo haver troca de informações e compartilhamento de métodos. . .

Diagrama de Classes • ASSOCIAÇÕES • “Equivalência” dos relacionamentos E-R • Representadas por Retas

Diagrama de Classes • ASSOCIAÇÕES • “Equivalência” dos relacionamentos E-R • Representadas por Retas ligando as classes Setas ( ) = representam a navegabilidade (sentido das informações) Títulos = determinam o tipo de vínculo entre as classes. . . • •

Diagrama de Classes • ASSOCIAÇÃO UNÁRIA ou reflexiva

Diagrama de Classes • ASSOCIAÇÃO UNÁRIA ou reflexiva

Diagrama de Classes • ASSOCIAÇÃO UNÁRIA - exemplo • • Associação “Chefia” Determina que

Diagrama de Classes • ASSOCIAÇÃO UNÁRIA - exemplo • • Associação “Chefia” Determina que um funcionário pode ou não chefiar outros funcionários. . . • Multiplicidade “ 0. . *” (semelhante a cardinalidade) • Indica que um determinado funcionário pode chefiar nenhum (0) ou muitos (*) funcionários. . .

Diagrama de Classes

Diagrama de Classes

Diagrama de Classes • ASSOCIAÇÃO BINÁRIA • Associações entre duas classes Mais comum •

Diagrama de Classes • ASSOCIAÇÃO BINÁRIA • Associações entre duas classes Mais comum •

Diagrama de Classes • ASSOCIAÇÃO BINÁRIA

Diagrama de Classes • ASSOCIAÇÃO BINÁRIA

Diagrama de Classes • ASSOCIAÇÃO TERNÁRIA ou N-ÁRIA • Associações que conectam mais de

Diagrama de Classes • ASSOCIAÇÃO TERNÁRIA ou N-ÁRIA • Associações que conectam mais de duas classes São representadas por um losângulo para onde convergem todas as ligações de associação (No Astah representado por um círculo-”interface”) • • Úteis para demonstrar associações complexas Devem ser evitadas – difíceis de interpretar

Diagrama de Classes • ASSOCIAÇÃO TERNÁRIA ou N-ÁRIA

Diagrama de Classes • ASSOCIAÇÃO TERNÁRIA ou N-ÁRIA

Diagrama de Classes • AGREGAÇÃO • Tipo especial de associação onde tenta-se demonstrar que

Diagrama de Classes • AGREGAÇÃO • Tipo especial de associação onde tenta-se demonstrar que as informações de um objeto (objetotodo) precisam ser complementadas pelas informações contidas em um ou mais objetos de outra classe (objeto-parte) • Relação Todo-Parte Losângulo (não pintado) na extremidade que contém os objetos-todo. . . •

Diagrama de Classes • AGREGAÇÃO

Diagrama de Classes • AGREGAÇÃO

Diagrama de Classes • AGREGAÇÃO

Diagrama de Classes • AGREGAÇÃO

Diagrama de Classes • COMPOSIÇÃO • Variação da associação de agregação. • Vínculo mais

Diagrama de Classes • COMPOSIÇÃO • Variação da associação de agregação. • Vínculo mais forte entre Objetos-Todo e Objetos. Parte • Objetos-Parte têm de pertencer exclusivamente a um Objeto-Todo • Losângulo (pintado)

Diagrama de Classes • COMPOSIÇÃO

Diagrama de Classes • COMPOSIÇÃO

Diagrama de Classes • COMPOSIÇÃO

Diagrama de Classes • COMPOSIÇÃO

Diagrama de Classes • ESPECIALIZAÇÃO/GENERALIZAÇÃO • Tipo especial de relacionamento. . . Identificar classes-mãe

Diagrama de Classes • ESPECIALIZAÇÃO/GENERALIZAÇÃO • Tipo especial de relacionamento. . . Identificar classes-mãe (gerais) e classes-filha (especializadas) • • • Permite métodos polimórficos Classes com características semelhantes

Diagrama de Classes

Diagrama de Classes

Diagrama de Classes • DEPENDÊNCIA • Demonstra certo grau de dependência de uma classe

Diagrama de Classes • DEPENDÊNCIA • Demonstra certo grau de dependência de uma classe a outra Mudança numa classe deverá refletir na outra •

Diagrama de Classes • REALIZAÇÃO • Mistura características de generalização e dependência • Identificar

Diagrama de Classes • REALIZAÇÃO • Mistura características de generalização e dependência • Identificar classes responsáveis por executar funções para classes que representam interfaces

Diagrama de Classes • Classe Associativa • Produzidas quando da ocorrência de associações que

Diagrama de Classes • Classe Associativa • Produzidas quando da ocorrência de associações que possuem multiplicidade muitos (*) em todas as suas extremidades • Classe para armazenar os atributos transmitidos pela associação

Diagrama de Classes • Classe Associativa

Diagrama de Classes • Classe Associativa

Diagrama de Classes • Classe Associativa

Diagrama de Classes • Classe Associativa

Diagrama de Classes • RESTRIÇÃO (constraint)

Diagrama de Classes • RESTRIÇÃO (constraint)