A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Diagrama de Classes e Diagrama de Objetos. Uma abstração denota as características essenciais de um objeto que o distingue de todos os outros tipos de.

Apresentações semelhantes


Apresentação em tema: "Diagrama de Classes e Diagrama de Objetos. Uma abstração denota as características essenciais de um objeto que o distingue de todos os outros tipos de."— Transcrição da apresentação:

1 Diagrama de Classes e Diagrama de Objetos

2 Uma abstração denota as características essenciais de um objeto que o distingue de todos os outros tipos de objetos e, portanto, fornece limites conceituais definidos claramente, relativos à perspectiva do observador. Enfoca a visão externa do objeto e, assim, serve para separar um comportamento essencial do objeto de sua implementação (a interface de um objeto fornece seu comportamento essencial ou métodos públicos e nada mais). A orientação a objetos estimula os programadores e usuários a pensarem sobre aplicações em termos abstratos. Começam com um conjunto de objetos para os quais criam um comportamento comum e encaixam em superclasses abstratas. As bibliotecas de classe detêm um depósito de elementos comuns e reutilizáveis e a herança mantém automaticamente as relações entre classes organizadas hierarquicamente na biblioteca. Além disso, cada nível de abstração faz com que o trabalho fique mais fácil, pela maior disponibilidade de codificação reutilizável. Abstração e Classificação

3 Herança Simples Na Herança Simples, os métodos e atributos definidos na superclasse são refletidos em todas as subclasses da hierarquia. Herança Forma origem mover() exibir() Retângulo ponto : Ponto Círculo raio : float Polígono pontos : ListaDePontos exibir() Quadrado

4 Veículo Aquático Veículo Veículo Terrestre Veículo Anfíbio Herança Múltipla Na Herança Múltipla, há mais de uma superclasse para uma mesma subclasse, das quais ela herda os métodos e atributos. Herança

5 Há três tipos de classes numa hierarquia: Tipos de Classes –Classe base –Classe base é a raiz da hierarquia, a superclasse de todas as classes. Os métodos e atributos definidos nesta classe são refletidos em todas as classes da hierarquia. Define o comportamento do objeto. –Classes abstratas –Classes abstratas são superclasses que contém a definição de comportamento de todo um ramo da hierarquia, porém sem implementá-lo (somente a declaração dos métodos). Nunca são instanciadas. –Classes concretas –Classes concretas são localizadas geralmente nas extremidades da hierarquia. Em um programa OO, os objetos são instanciados a partir dessas classes. Telefone Celular Telefone Telefone Convencional A classe Telefone não pode ser instanciada. Telefone Convencional e Telefone Celular são concretas, implementam os métodos e podem ser instanciadas.

6 Em UML as classes são representadas por um retângulo dividido em três compartimentos: Classes Cliente Nome : String Idade : Num Criar () Destruir () –o compartimento de nome, que conterá apenas o nome da classe modelada –o de atributos, que possuirá a relação de atributos que a classe possui em sua estrutura interna –o compartimento de operações, que serão os métodos de manipulação de dados e de comunicação de uma classe com outras do sistema.

7 Indivíduo código: int sexo: char nome: String Indivíduo código: int sexo: char nome: String inluir() atualizar() Variações de Representação

8 Atributos Um atributo representa alguma propriedade do que está sendo modelado, que é compartilhada por todos os objetos da classe. Os atributos descrevem os dados contidos nas instâncias de uma classe. Em um momento dado, um objeto de uma classe conterá valores para todos os atributos descritos na sua classe. Cliente nome endereço telefone Parede altura : real largura : real espessura : real viga : boolean = false Atributos de uma classe podem ser identificados apenas com seus nomes ou podem ter seus tipos (ou classes) especificados e ter valores padrão definidos

9 Operações Uma operação é uma abstração de alguma coisa que se pode fazer com um objeto e que é compartilhada por todos os objetos da classe. Um classe pode ter qualquer número de operações, inclusive nenhuma. Como para os atributos, pode-se especificar uma operação apenas com seu nome ou pode-se também especificar a assinatura da operação: seus parâmetros, o tipo desses parâmetros e o tipo de retorno

10 Visibilidade Pode-se usar marcações de acesso para especificar o tipo de acesso permitido aos atributos e operações. Classificador Classificador: classes, interfaces, componentes, nós, use cases, subsistemas. + público + público: todos os classificadores podem usar. - privado - privado: somente o próprio classificador poderá usar. # protegido # protegido: qualquer descendente do classificador poderá usar.

11 Poucas classes vivem sozinhas. A maioria das classes colabora com outras classes de várias maneiras. Os relacionamentos ligam as classes/objetos entre si, criando relações lógicas entre essas entidades. Os relacionamentos podem ser dos seguintes tipos: Relacionamentos -Associação -Agregação -Composição -Generalização -Dependência -Refinamento

12 Interfaces Uma interface é um conjunto de operações usado para especificar um serviço de uma classe ou componente. Diferentemente das classes, as interfaces não especificam nenhuma estrutura e não podem conter atributos (especificam o contrato para uma classe ou componente, sem definir como ele será implementado). O uso de interfaces é uma maneira elegante e poderosa de isolar a especificação da implementação, um relacionamento entre uma especificação e sua implementação.

13 Interfaces (notação) | Empregado Empregado verificarFicha() calcularSalário() >

14 Realização (notação) Empregado Empregado_Impl

15 Diagrama de classes Os diagramas de classes são os principais diagramas estruturais da UML. Diagramas de classe mostram classes, interfaces e os relacionamentos entre esses elementos. As classes especificam a estrutura e o comportamento dos objetos. Objetos são instâncias de classes. Conteúdo: ClassesInterfacesColaborações Relacionamentos de dependência, generalização e associação

16 +confirmar() +cancelar() -calcularTotal():Currency gerarNovoCodigo: String -codigo: Integer -dataRecebido -total: Currency Pedido #creditoPermitido: Currency #nivelCredibilidade() -nome: String -endereco: String -dataPrimeiraCompra: Date -dataUltimaCompra: Date -totalComprado: Currency Cliente -quantidade: Integer -preco: Currency -emEstoque: Boolean Item de Pedido nomeContato: String telefones[1..10]: String CNPJ: String FAX[1..3]: String Cliente pessoa-jurídica colocarListaNegra() nome: String CPF: String numCartaoCredito Cliente pessoa-física Empregado Produto * representante de vendas * * IPessoa itens Diagrama de classes

17 Um objeto é um elemento que podemos manipular, acompanhar seu comportamento, criar, destruir etc. Um objeto existe no mundo real, podendo ser uma parte de qualquer tipo de sistema, por exemplo, uma máquina, uma organização ou negócio. Existem objetos que não encontramos no mundo real, mas que podem ser vistos de derivações de estudos da estrutura e comportamento de outros objetos do mundo real. Em UML um objeto é mostrado como uma classe, só que seu nome é sublinhado e pode ser mostrado opcionalmente com o nome da classe. Os diagramas de objetos mostram uma fotografia de um sistema OO em execução. São mostrados os objetos, com os valores de seus atributos e as ligações entre eles. São úteis para a modelagem de estruturas de dados complexas, depuração etc. Objetos

18 Representação de um objeto Objetos Marcia Moita:Cliente Nome : Marcia Moita Idade : 20 Criar () Destruir () Nome do Objeto Atributos Operações

19 Objetos simples codCurso: "IF291" descrição: "MPS" codTurma: I7 : Curso : AlunoGeorge Bush Monica: AlunoFulano : Jaelson: Professor

20 Multiobjetos Multiobjetos são conjuntos de objetos, com um número indeterminado de elementos. São usados, por exemplo, em diagramas de colaboração para modelar uma mensagem enviada para vários objetos ao mesmo tempo. Multiobjetos Agente de Reservas : Cadeira 1: cadeira := encontrar(número) : Cadeira 2: reservar(nomeCliente)

21 Diagrama de objetos É comum haver centenas ou milhares de objetos em um sistema em execução, a maioria deles anônimos, por isso o diagrama de objetos mostra apenas uma parte dos objetos no sistema. Diagramas de objetos são estáticos e não mostram a evolução do sistema com o tempo. Para mostrar o comportamento de um objeto, deve-se usar diagramas de comunicação, diagramas de seqüência ou diagramas de estados. É comum colocar um diagrama de classes junto com um diagrama de objetos, para facilitar a identificação dos objetos.

22 -matrícula: String -nome: String Professor -codDisciplina: String -descrição: String -codTurma: String Curso -matrícula: String -nome: String -período: Integer Aluno [0..10] ministra [1..5] * [1..3] Diagrama de objetos


Carregar ppt "Diagrama de Classes e Diagrama de Objetos. Uma abstração denota as características essenciais de um objeto que o distingue de todos os outros tipos de."

Apresentações semelhantes


Anúncios Google