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

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

AOO - Análise Orientado a Objetos Professor: Marcio Gonçalves Associação Educacional Leonardo da Vinci.

Apresentações semelhantes


Apresentação em tema: "AOO - Análise Orientado a Objetos Professor: Marcio Gonçalves Associação Educacional Leonardo da Vinci."— Transcrição da apresentação:

1 AOO - Análise Orientado a Objetos Professor: Marcio Gonçalves Associação Educacional Leonardo da Vinci

2 Agenda Apresentação Cenário Paradigmas da Orientação a Objetos Princípios Básicos

3 Apresentação da disciplina Formação Experiência profissional Atividades desenvolvidas Forma de avaliação (2 provas e 1 trabalho)

4 Cenário Surgimento da Eng a. de Sofware (60) para resolver os problemas gerados pela crise do software. As várias técnicas desenvolvidas nos anos 70 e 80 não resolveram o problema de produtividade e qualidade nos softwares.

5 Cenário Lições da década de 80. Requisitos do usuário são mais importantes Funções e dados tem grande importância, porém não podem estar separados

6 Cenário Realidade atual Sistemas de alta complexidade Ferramentas de desenvolvimento drasticamente diferentes de 20 anos atrás. Sistemas maiores, mais complexos e mais voláteis. A mudança para alcançar a qualidade e produtividade está na reutilização.

7 Paradigmas da O. Objetos O que são objetos Objetos computacionais Os diferentes tipos de objetos Análise e projeto orientado a objetos?

8 O que são Objetos Podemos entender um objeto como uma coisa física: uma pedra, um melão, um carro. Contudo um objeto pode também ser algo que não existe em forma física: uma equação, conta corrente.

9 Objetos Computacionais Objetos que se encontram dentro do sistemas de computador. São abstrações do mundo real. Objetos computacionais são estruturas de programas que contém as informações e os comportamentos que representam um objeto dentro do sistema.

10 Os diferentes tipos de Objetos Objetos computacionais visuais Objetos com tarefa relacionada Objetos multimídia

11 Análise e Programação OO. Análise orientada a objetos Consiste em definir quais objetos fazem parte de um sistema e a maneira como se comportam. Programação orientada a objetos Consiste em utilizar objetos computacionais para implementar as funcionalidades de um sistema.

12 Por que Orientação a Objetos? Aumento de Produtividade Ganho de Qualidade Ganho de Confiabilidade Conhecimento adquirido podendo ser compartilhado Manutenibilidade Custos

13 Flexibilidade a mudanças Mudanças nos processos de negócio do usuário Década de 40: 10 anos Década de 60-70: 5 anos Década de 90: 2 anos Atualmente: 6 meses

14 Conceitos Básicos Abstração Encapsulamento Objetos Classes Persistência Herança

15 Abstração Ato de separar um ou mais elementos de uma totalidade complexa (coisa, representação, fato), os quais só mentalmente podem ser separados Ignorar aspectos não relevantes É a capacidade de focalizar o essencial e ignorar detalhes acidentais não relacionados com o objetivo estabelecido.

16 Abstração

17

18 Encapsulamento Ocultar aspectos não relevantes Modo de utilização dos dados e métodos é diferente da prog. tradicional. Os dados e processos em uma única entidade. Um dos grande trunfo da POO em relação a prog. tradicional. Permite alterações sem afetar demais partes do sistema.

19 Encapsulamento Benefícios Modularidade - (O código é independente de outros objetos) Informações Privadas (um objeto tem uma interface pública que outros objetos podem utilizar. As informações do objeto são privadas) [Information Hiding]

20 Encapsulamento

21 Objetos São elementos reais ou abstratos (de pensamento) que sofrem ou executam ações. Um objeto é qualquer indivíduo, lugar, evento, coisa, tela, relatório ou conceito que seja aplicável ao sistema. Objeto é uma entidade capaz de reter um estado (informação) e que oferece uma séria de operações (comportamentos) ou para examinar ou para afetar este estado.

22 Como é um objeto? Apresenta características (Estado). Executa e sofre ações (Comportamento). Podem ser classificados por categorias ou classes. Interagem e agrupam-se formando sistemas (que podem ser considerados como objetos).

23 Objetos

24 Exemplos: Coisas: Cadeira, Mesa, Telefone, Televisão,... Funções: Diretor, Funcionário, Professor, Cliente,... Eventos: uma Festa, um Congresso, uma Aula,... Lugares: uma Cidade, uma Sala, um País,.... Processos: uma Operação, um Procedimento,...

25 Atributos É o conjunto de características que descrevem os objetos Atributos de uma pessoa: cor dos olhos, altura, peso, idade, sexo… Atributos de uma conta corrente: correntista, saldo, data de abertura… Somente mudam através de agentes interno ou externos.

26 Atributos Os valores das propriedades de um objeto definem seu Estado.

27 Exercícios Identificar pelo menos 10 objetos que pertencem ao domínio de problema: Sala de Aula

28 Métodos ou Serviços (Ações) São as tarefas que o objeto pode realizar As ações do objeto podem interagir com outros objetos Ou podem ser ações internas Ações de um cachorro: latir, babar, correr em círculos, morder…

29 Diagrama de Serviços

30 Diagrama de Serviços (exemplo)

31

32 Exercícios Identificar os métodos existentes no objeto Professor Graficar/Descrever o diagrama de serviços para o método FazerChamada do objeto Professor

33 Exercícios

34 Classes São os modelos a partir dos quais os objetos são criados (Ex: Planta Estrutural) Os modelos são agrupados em classes ou categorias por similaridade de finalidade As categorias estruturam-se hieraquicamente. Ex.: Pessoas–Clientes-Funcionarios, Animais-Aves-Canários

35 Classes Duas categorias de bichos: Cães e Gatos

36 Classes

37

38 Hierarquia de Classes Mamífero Primata Felino Características Comuns Ser HumanoChimpanzé

39 Herança Tudo aquilo que se herda; Aquilo que se transmite por hereditariedade (Ex: Características genéticas dos pais). Mamífero Primata Herança Caracteristicas comuns Ser Humano Mamar Possuir Pêlos Possuir Mãos e Pés É Inteligente Andar ereto Filosofar

40 Herança Classes prontas podem ser usadas para escrever novos objetos (SuperClasse e SubClasses, Ancestrais e Descendentes) O programador só escreve o que muda Alterações nos ancestrais se propagam aos descendentes Menos bugs, mais produtividade

41 Herança Simples

42 Herança Múltipla

43 Instanciação É quando a classe produz um objeto, como se ela fosse um modelo para a criação de objetos. Objetos nada mais são do que classes instanciadas. É o que dá existência ao objeto. Cada objeto é uma instância de sua classe

44 Instanciação Fazendo uma analogia com a programação procedural. A estrutura de uma tabela pode ser comparada com uma classe e cada novo registro seria um novo objeto instanciado. Obs: Isto só vale para efeitos de comparação, pois classe também possuem a definição dos métodos.

45 Classes Puras ou Abstratas São aquelas que nunca serão instanciadas diretamente. Servem de apoio para o processo de estruturação. Exemplo:

46 Exercícios Identificar os objetos da Sala de Aula Agrupar os objetos em classe conforme suas caracteristicas

47 Tipos de Estruturas Visualizar Domínio e Complexidade do problema em estudo. Tipos: - Generalização-Especialização - Todo-Parte

48 Tipos de Estruturas Generalização-Especialização

49 Tipos de Estruturas Generalização-Especialização

50 Tipos de Estruturas Generalização-Especialização

51 Tipos de Estruturas Todo-Parte

52 Tipos de Estruturas Todo-Parte

53 Tipos de Estruturas Todo-Parte

54 Exercícios Identificar as possíveis estruturas existentes no exercício da Sala de Aula.

55 Exercícios Identificar e graficar 5 exemplos de estruturas do tipo Generalização- Especialização Identificar e graficar 5 exemplos de estruturas do tipo Todo-Parte

56 Relacionamentos Conexões de Ocorrência Quando um atributo de um objeto contém uma referência a outro objeto. Conexões de Mensagens Quando um objeto ativa um método de outro objeto.

57 Relacionamentos Conexões de Ocorrência Cardinalidade Conexões de Muitos para Muitos.

58 Relacionamentos Conexões de Ocorrência. Exemplo

59 Relacionamentos Conexões de Mensagens Métodos disparados no objeto recebedor Ocorre entre objetos Entre classes somente quando um novo objeto é criado. Pode ou não retornar alguma resposta.

60 Relacionamentos Conexões por Mensagem

61 Relacionamentos

62 Persistência Tempo em que um objeto fica em memória, tanto na principal como na secundária. Para tornar um objeto persistente precisamos salvá-lo em meio magnético. A persistência de um objeto não significa que o mesmo é eterno. (ex. Cadastro de clientes)

63 Polimorfismo As classes fazem a mesma operação (método), mas de forma diferente. Ocorre quando um método definido no ancestral é redefinido no descendente com um comportamento diferente. Todo método definido em um ancestral pode ser acessado através dos descendentes

64 Polimorfismo As classes fazem a mesma operação (método), mas de forma diferente.

65 Polimorfismo O objeto chamador apenas precisa referenciar o método.

66 Polimorfismo

67 Assunto A idéia de dividir o sistema em assuntos é proporcionar ao analista uma visão geral de um modelo. Transformar as classes mais superiores em assuntos Indicado o uso para modelos com mais de 35 objetos.

68 Assunto

69 Possíveis assuntos do modelo. Pessoa Curso Matricula Plano de Aula

70 Assunto

71 Exemplo de Instâncias

72 Demonstração da Teoria type c_pessoa = class nome string[40]; endereçostring[40]; end; - Definição de uma classe


Carregar ppt "AOO - Análise Orientado a Objetos Professor: Marcio Gonçalves Associação Educacional Leonardo da Vinci."

Apresentações semelhantes


Anúncios Google