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

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

AOO - Análise Orientado a Objetos

Apresentações semelhantes


Apresentação em tema: "AOO - Análise Orientado a Objetos"— Transcrição da apresentação:

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

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 Enga. 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. Cenário No final da década de 60 surge a disciplina “Engenharia de software” para atacar os problemas gerados pela “Crise do software”. Porém as várias técnicas desenvolvidas nos anos 70 e 80 não resolveram os problemas de produtividade e qualidade em software.

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 Lições da década de 80 Codificação e metodologias de desenvolvimento são menos importantes que os requisitos dos usuários. Funções e dados têm grande importância, porém não podem estar separados. Técnicas de modelagem sem um suporte automatizado (CASE) não são bem aplicadas na prática.

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. Realidade atual Sistemas de hoje são diferentes daqueles da época do desenvolvimento da Análise e Projeto Estruturados. Ferramentas e ambientes de desenvolvimento são drasticamente diferentes do que 20 anos atrás. Sistemas são maiores, mais complexos e mais voláteis do que anos atrás. A interface ocupa hoje cerca de 75% do código de uma aplicação. A mudança para alcançar qualidade e produtividade está na reutilização de componentes, ênfase da O.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. O QUE SÃO OBJETOS? Conforme o dicionário Aurélio, temos as seguintes definições para a palavra “objeto”: [Do lat. objectu, part. de objicere, 'pôr, lançar diante', 'expor'.] S. m. 1. Tudo que é apreendido pelo conhecimento, que não é o sujeito do conhecimento. 2. Tudo que é manipulável e/ou manufaturável. 3. Tudo que é perceptível por qualquer dos sentidos. 4. Coisa, peça, artigo de compra e venda: 5. Matéria, assunto: 6. Agente; motivo, causa: 7. O ponto de convergência duma atividade; mira, desígnio: 8. Mira, fim, propósito, intento; objetivo: 9. Filos. O que é conhecido, pensado ou representado, em oposição ao ato de conhecer, pensar ou representar. 10. Filos. O que se apresenta à percepção com um caráter fixo e estável. [Cf. (nesta acepç.) sujeito (11).] 11. Ópt. Fonte de luz ou corpo iluminado cuja imagem se pode formar num sistema óptico. 12. Jur. Aquilo sobre que incide um direito, obrigação, faculdade, norma de procedimento, proibição, etc. Pelas definições podemos ver que o termo “objeto” pode ter muitos significados diferentes. Podemos entender um objeto como uma “coisa” física: uma pedra, uma jaca ou um sapo por exemplo. Também podemos considerar uma equação ou uma conta bancária como um objeto, nesse caso puramente mental, pois não existe uma “coisa” física que pode impressionar nossos sentidos para que estes o percebam como um objeto físico. Pois bem, nos objetos computacionais (objetos que se encontram dentro de sistemas de computador) procuramos reproduzir as mesmas características dos objetos do mundo real, programando comportamentos semelhantes àqueles que encontramos nos objetos do mundo real. Um programador pode interagir com esses objetos ativando os comportamentos programados, sem necessidade de entender o funcionamento interno desses comportamentos. Ou seja, para interagir com os objetos, precisamos apenas conhecer o que fazem e usá-los, nada mais. A proposta da orientação a Objetos é representar o mais fielmente possível as situações do mundo real nos sistemas computacionais. Nós entendemos o mundo como um todo composto por vários objetos que interagem uns com os outros. Da mesma maneira, a Orientação a Objetos consiste em considerar os sistemas computacionais não como uma coleção estruturada de processos, mas sim como uma coleção de objetos que interagem entre si. Orientação a Objetos consiste em considerar os sistemas computacionais como uma coleção de objetos que interagem de maneira organizada.

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. OBJETOS COMPUTACIONAIS À primeira vista pode parecer complicado imaginar objetos dentro de um sistema de computador. Como imaginar um carro dentro de um computador? Ou mesmo uma casa? Ou uma bola? De fato pode parecer estranho, mas devemos estar atentos que a representação no computador sempre é uma abstração dos objetos do mundo real. E como tal, esses modelos abstratos também podem se comportar da mesma maneira como o fariam no mundo real. A primeira coisa a dizer dos objetos computacionais é que eles são simplificações dos objetos reais. Um objeto “pessoa” em um sistema computacional é reduzido a um espaço de memória onde registramos dados pessoais e trechos de programa que processam esses dados de modo a registrar no sistema comportamentos que uma pessoa do mundo real realiza (comprar, receber salário, etc.). Para que os objetos computacionais possam interagir dentro de um sistema de computador da mesma forma como os objetos reais interagem com o mundo real, é importante que esses objetos saibam como reagir perante uma ação. Não é o sistema que determina o comportamento de um objeto computacional, mas ele próprio deve possuir a informação necessária para saber como e de que forma deve se comportar diante uma situação. Se eu jogar uma bola real no chão do mundo real, esta deverá saltitar, não porque eu quis, mas porque as características da bola a fazem ter esse comportamento diante da ação que impus à ela. Da mesma forma, se concebermos um objeto computacional bola (cuja intenção é reproduzir uma bola real), este deverá simular no computador a ação de quicar quando jogada, tão perfeitamente quanto for preciso. Por exemplo, ao sacar um cheque no mundo real, o saldo da conta bancária diminui e dinheiro em caixa cresce. Para reproduzir essa situação em um sistema computacional, criaríamos um objeto “cheque”, um objeto “conta bancária” e um objeto “caixa”. Em um sistema computacional, o objeto “caixa” poderia reagir ao recebimento de um objeto “cheque” solicitando ao objeto “conta” o desconto desse cheque. O objeto “conta” executa o saque, diminui o valor do atributo “saldo” e retorna uma resposta ao objeto “caixa”, que aumenta o valor do atributo “saldo” no valor do cheque. Objetos computacionais são estruturas de programação 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 OS DIFERENTES TIPOS DE OBJETOS COMPUTACIONAIS Com o objetivo de esclarecer melhor essa relação entre os objetos computacionais e o comportamento agregado, vamos utilizar, como exemplo, alguns tipos diferentes de objetos encontrados no ambiente computacional. Objetos Computacionais Visuais Esse tipo de objeto possui uma forma direta de interação com os usuários. De fato, os usuários podem apertar botões, mover peças e selecionar itens dentro de caixas. É uma interação que, apesar de acontecer em um monitor de vídeo, sob o controle de um mouse ou mesmo um teclado, possui um nível de abstração e interação muito bom em relação ao mundo real. A Figura 1 ilustra alguns desses objetos visuais, como os Button (botões), ListBox (Caixa de texto com barra de rolagem), o MonthCalendar (Calendário), RadioButton (Primeiro, Segundo e Terceiro), os CheckBox (Cadeira, Mesa e Sofá) e o ComboBox (Vermelho). Figura 1 – Objetos comuns de interface com o usuário Objetos computacionais visuais são comumente manuseados por ambientes de programação visual. Para utilizar os objetos desses ambientes basta selecioná-los em uma palheta e arrastá-los até a janela da aplicação. Nossa única preocupação em relação a esses objetos durante o desenvolvimento de um sistema é onde utilizá-los, pois os componentes já “sabem” como devem funcionar sem que haja necessidade de escrever código para isso. O Button (Botão), por exemplo, “sabe” como deve ser pressionado, o Listbox “sabe” como funciona o Scrollbar (Barra de Rolagem), ou seja, os objetos sabem como se comportar quando solicitado à eles alguma ação. Esses componentes visuais são verdadeiros objetos, pois pode-se criar descendentes dos componentes originais, alterando comportamentos e agregando novas funcionalidades. Programar de forma orientada a objetos não se resume a utilizar componentes visuais na interface gráfica, mas em definir o sistema inteiro dentro da filosofia orientada a objetos. O fato de um programa ser feito em uma ferramenta de programação visual não quer dizer necessariamente que ele é orientado a objetos.

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. Análise Orientada a Objetos Baseado nessa metodologia, o processo de análise consiste em identificar quais objetos existem dentro do universo que se pretende automatizar, e quais são atributos e ações desses objetos. Uma das vantagens que se pretende buscar com essa maneira de entender os sistemas é a capacidade do analista poder compartilhar com o usuário leigo o entendimento que ele tem de como o sistema funciona. Análise Orientada a Objetos consiste em definir quais objetos que fazem parte de um sistema e a maneira como se comportam. Programação Orientada a Objetos A programação orientada a objetos consiste em utilizar estruturas de dados que simulem o comportamento dos objetos, facilitando a programação pelo uso de uma metodologia unificada para a análise e a programação. Os mesmos objetos que o analista identifica no seu diagrama podem ser implementados exatamente como foram projetados, sem necessidade de fazer uma “tradução” dos diagramas da análise para estruturas de dados e de programação como acontece na análise estruturada. É possível, entretanto, fazer uma análise orientada a objetos e implementar em uma linguagem tradicional, bem como é possível também fazer implementações em linguagens orientadas a objetos de sistemas analisados com outras metodologias. Programação Orientada a Objetos consiste em utilizar objetos computacionais para implementar as funcionalidades de um sistema. OS BENEFÍCIOS DA ORIENTAÇÃO A OBJETOS! A técnica de análise e programação orientada a objetos está se tornando cada vez mais popular entre os desenvolvedores de sistema. Essa popularidade não é fruto do acaso, ou da “moda”, e sim das vantagens que os desenvolvedores passam a usufruir quando adotam essa metodologia. A principal vantagem da orientação a objetos consiste em reunir em uma mesma estrutura os dados e os processos que são executadas sobre esses dados, permitindo assim um grau maior de organização e simplicidade do programa. A partir do momento em que um desenvolvedor cria um objeto para realizar uma tarefa complexa, os outros desenvolvedores só precisam acessar esse objeto para realizar essas mesmas tarefas, sem precisar saber como elas são realizadas. Se alguém muda a maneira como esse objeto realiza internamente essa tarefa, os outros desenvolvedores não precisam alterar os seus programas para continuar acessando o novo comportamento, e isso representa um ganho real de produtividade. O procedimento de manutenção restrito ao objeto reduz custo, tempo e assegura a certeza de uma manutenção eficaz, visto que as variáveis controladas estavam restritos aos objetos modificados, e mais em nenhuma outra parte do 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. Exemplos 1: Ao modelarmos aviões comercias, helicópteros e caças podemos abstrair detalhes de cada um deles e observar somente o que existe em comum. Exemplos 2: Toda pessoa tem um atributo para cor dos olhos, ao modelarmos um sistema de folha de pagamento de folha de pagtos, esta informação é irrelevante, portanto não precisa ser incluída em nossa relação de atributos. Ato de separar mentalmente um ou mais elementos de uma totalidade complexa. É o ato de dividir problemas complexos em problemas menores, e feito isto resolvemos cada um deles até encontrar a solução para o problema inteiro. O termo abstração em desenvolvimento de sistemas, significa a grosso modo só devemos representar aquilo que vai ser usado. Abstração é a capacidade de olhar apenas uma parte de um todo, ou seja, retirar da realidade apenas as entidades e fenômenos considerados essenciais, excluíndo-se todos os aspectos irrelevantes ou secundários. Através do mecanismo de abstração, o ser humano pode entender formas complexas, ao dividi-las em partes e analisar cada parte separadamente. Abstração - Consiste na concentração nos aspectos essenciais. Preserva a liberdade de se tomar decisões evitando, tanto quanto possível comprometimentos prematuros com detalhes. É o processo pelo qual a mente ou a inteligência compreende o objeto, suas características e suas funcionalidade Abstração Abstração é a capacidade de focalizar o essencial e ignorar detalhes acidentais não relacionados com o objetivo estabelecido. Por exemplo: ao modelar aviões comerciais, helicópteros e caças podemos abstrair detalhes de cada um deles e observar somente o que existe em comum. Os objetos de software também são criados tentando abstrair algo do mundo, seja um objeto real ou abstrato.

16 Abstração

17 Abstração

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. Encapsulamento A partir do encapsulamento, podemos ocultar detalhes referentes à implementação de um Objeto. Desta forma, podemos proteger os dados contra adulteração, visto que só podem ser acessados pelo próprio Objeto, através de seus métodos. Estes métodos implementam as operações permitidas sobre a estrutura de dados. Encapsulamento é um mecanismo que utilizamos para esconder detalhes de estruturas complexas, que de outra forma iriam interferir em nossa análise. Abstração, hierarquização e encapsulamento estão ligados. Como vimos, abstração é a capacidade de dividirmos estruturas em partes, para analisá-las separadamente. Conforme vamos decompondo sucessivamente cada uma das partes de um todo, geramos uma hierarquia, que se estende até o componente mais específico. Desta forma quando agregamos componentes, formando um novo todo, estamos encapsulando estes componentes, que não mais aparecerão, e isto facilita a análise.

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] O modo de utilização dos atributos e métodos é diferente do modo como a programação tradicional utiliza. Na OO os dados e os processos que tratam esses dados são “encapsulados” numa única entidade. A única maneira de conhecermos ou alterarmos os atributos de um objeto é através de seus métodos. O encapsulamento é op grande trunfo da OO em relação a programação tradicional (estruturada), a vantagem é que encapsulamento disponibiliza o objeto com toda sua funcionalidade sem que você precise saber como ele funciona internamente e nem como armazena os dados que você recupera. Separação dos aspectos externos de um objeto dos seus detalhes internos de implementação O estado de um objeto somente é acessível a partir da implementação de seu comportamento Encapsulamento - Também chamado de ocultamento de informações, é o resultado de ocultar os detalhes de implementação de um objeto. É o termo formal que descreve a junção de métodos e dados dentro de um objeto de maneira que o acesso aos dados seja permitido somente por meio dos próprios métodos do objeto. Nenhuma outra parte do programa pode operar diretamente em um dado do objeto. A comunicação de objetos ocorre exclusivamente por meio de mensagens explícitas.

20 Encapsulamento 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 Objetos 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, ... A cadeira por si só, é um objeto único. Contudo outros objetos foram empregados na sua construção, como a madeira e os pregos. Um prego também é um objeto independente, com suas próprias caracteristicas.

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 Diagrama de Serviços (exemplo)

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 Classes

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

39 Caracteristicas comuns
Herança Tudo aquilo que se herda; Aquilo que se transmite por hereditariedade (Ex: Características genéticas dos pais). Mamar Possuir Pêlos Mamífero Herança Caracteristicas comuns Possuir Mãos e Pés É Inteligente Primata Ser Humano 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: Elas só existem para unificar todos os atributos e métodos comuns evitando assim redundância..

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 Generalização-Especialização
Tipos de Estruturas Generalização-Especialização É uma estrutura hierárquica onde temos superclasses e suas respectivas subclasses. É onde ocorre a herança. Quando desejarmos implementar herança devemos utilizar este tipo de estrutura. Pode ocorrer entre classes ou objetos.

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

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

51 Tipos de Estruturas Todo-Parte
Trata-se de agregação ou decomposição de objetos. É uma estratégia muito útil na identificação dos objetos e seus componentes. Também ocorre entre objetos ou classes. Isto significa que um objeto/classe podem conter, dentro de si, outras estruturas.

52 Tipos de Estruturas Todo-Parte
A estruturas todo-parte possuem um componente chamado de CARDINALIDADE.

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 Conexões de Mensagens
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. Não caracterizam qualquer tipo de hierarquia ou mesmo estrutura. Relacionamentos ocorrem quando os objetos referenciam uns aos outros (Conexão de ocorrência) ou quando um objeto ativa um método de outro objeto (conexão por mensagem).

57 Relacionamentos Conexões de Ocorrência Cardinalidade
Conexões de Muitos para Muitos. Conexões por Ocorrência - Cardinalidade é o número de vezes que um objeto é referenciado ou referencia outro. - Aparecem quando identificamos redundância. Exemplo: Objeto carro e desejarmos manter os dados do proprietário. O exemplo não se trata de uma hierarquia, nem de uma estrutura, apenas existe uma ocorrência. Quando acontece um relacionamento muitos para muitos, normalmente surge um novo objeto.

58 Relacionamentos Conexões de Ocorrência. Exemplo Um exemplo prático:
- Objeto locação deverá fazer a amarração da conexão de ocorrência entre os objetos

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. Normalmente a conexões por mensagens ocorre de objeto para objetos. Uma classe somente recebe uma conexão por mensagem quando esta for solicitada para criar um novo objeto.

60 Relacionamentos Conexões por Mensagem
O método Locar_Fita_Cliente tem duas funções, verificar se o cliente existe ou cadastrar um novo cliente. O método Locar_Fita_Cliente dispara uma conexão de ocorrência para o objeto Cadastro_Cliente e caso seja negativo será enviada uma mensagem para o objeto Cadastro_Cliente para que este crie um novo objeto Cliente.

61 Relacionamentos O método Locar_Fita_Cliente tem duas funções, verificar se o cliente existe ou cadastrar um novo cliente. O método Locar_Fita_Cliente dispara uma conexão de ocorrência para o objeto Cadastro_Cliente e caso seja negativo será enviada uma mensagem para o objeto Cadastro_Cliente para que este crie um novo objeto Cliente.

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 Assunto Possíveis assuntos do modelo. Pessoa Curso Matricula
Plano de Aula

70 Assunto

71 Exemplo de Instâncias

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


Carregar ppt "AOO - Análise Orientado a Objetos"

Apresentações semelhantes


Anúncios Google