1 / 12

Introdução à Programação

Introdução à Programação. Um enfoque orientado a construção de modelos em programas baseados em objetos. Gustavo Motta Departamento de Informática - UFPB. 2. Modelos orientados a objetos. Conceito

arien
Download Presentation

Introdução à Programação

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introdução à Programação Um enfoque orientado a construção de modelos em programas baseados em objetos Gustavo Motta Departamento de Informática - UFPB

  2. 2. Modelos orientados a objetos • Conceito • Modelos orientados a objetos representam o mundo real por meio de objetos que interagem entre si exibindo um comportamento pela execução de operações • Objetos são entidades que têm • Identidade • Atributos determinando um estado • Comportamento • Objetos mais simples são compostos para formar objetos mais complexos • A execução de operações permite a troca de informações entre os objetos (C) 2008 Gustavo Motta

  3. 2. Modelos orientados a objetos • Problema 2: Representar uma figura com as seguintes características • Situa-se em algum um lugar no espaço • Poder ser movida de um local para outro • Poder ser apagada • Poder ser mostrada (C) 2008 Gustavo Motta

  4. 2. Modelos orientados a objetos • Problema 2: Representar uma figura • Propriedades essenciais – observáveis externamente • A figura situa-se num certo lugar no espaço – estado da figura • A figura está visível ou invisível – estado da figura também • As operações para mover, mostrar e apagar a figura – comportamento • Uma operação para criar uma figura, atribuindo-lhe uma identidade (C) 2008 Gustavo Motta

  5. 2. Modelos orientados a objetos • Problema 2: Representar uma figura • Representação das propriedades essenciais • Estado da figura • Posição no espaço • Par de variáveis x e y do tipo inteiro representando a posição da figura em coordenadas cartesianas • Visível ou invisível • Variável do tipo lógica denominada visivel, a qual só admite dois valores: verdadeiro ou falso • Comportamento • Determinado pela execução das seguintes operações • movePara(inteiro a, inteiro b) • mostra() • apaga() • Criação de figuras • Determinado pela operação especial de criação chamada • criar (C) 2008 Gustavo Motta

  6. 2. Modelos orientados a objetos • Problema 2: Representar uma figura • Representação gráfica do modelo de um objeto figura Figura inteiro x, y; logico visivel; Estado movePara(inteiro a, inteiro b) Mostra() Apaga() (C) 2008 Gustavo Motta

  7. Declaração das variáveis do estado do objetoFigura Declaração das operações do objetoFigura 2. Modelos orientados a objetos modelo Figura inicio do modelo inteiro x = 0, y = 0; logico visivel = falso; operacao movePara(inteiro a, inteiro b) inicio x = a; y = b; fim operacao mostra() inicio se (visivel == falso) inicio exiba “Figura desenhada na posição “ + x + “, “ + y visivel = verdadeiro fim fim operacao apaga() inicio se (visivel == verdadeiro) inicio exiba “Figura apagada na posição “ + x + “, “ + y visivel = falso fim fim fim do modelo • Problema 2: Representar uma figura • Representação textual numa pseudo-linguagem (C) 2008 Gustavo Motta

  8. 0 0 x x 0 0 y y 1 falso falso visivel visivel 2 3 2. Modelos orientados a objetos • Problema 2: Representar uma figura • Criação de figuras com base num modelo • Note-se que foi adotada uma visão abstrata de uma figuracom base em suas característicasessenciais • Não foi dada uma forma concreta • Ponto • Quadrado • Imagem • Etc. • Mudanças de estado feitas por uma operação são percebidas pelas operações executadas depois Memória Figura fig1 = criar Figura(); 10 Fig1.movePara(10, 15); 15 Fig1.mostra(); falso verdadeiro Figura fig2 = criar Figura(); A variável fig1 declarada do tipo Figura é uma referência para o objeto criado na memória na posição1 3 Fig2.mostra(); 9 Fig2.movePara(3, 9); verdadeiro Fig1.apaga(); A partir de um mesmo modelo, pode-secriar um número arbitrário de objetos (C) 2008 Gustavo Motta

  9. 2. Modelos orientados a objetos • Objetos • Conceitualmente são entidades que têm um estado, um comportamento e uma identidade • Abstraem entidades do mundo real • Do ponto de vista de programação • Um objeto é uma coleção de operações que compartilham um estado • Operações determinam o comportamento do objeto • Operações também são chamadas de métodos • Operações definem a interface do objeto, isto é, o meio pelo qual interagimos com ele independente de como está implementado • O estado compartilhado é escondido (encapsulado) do mundo exterior • Apenas as operações podem acessá-lo para consulta ou modificação • Variáveis que determinam o estado interno de um objeto são chamadas de variáveis de instância (C) 2008 Gustavo Motta

  10. 2. Modelos orientados a objetos • Problema 2: Representar uma conta bancária simplificada • A conta mantém informações sobre o correntista, o saldo em conta e se a conta é especial ou não • Caso a conta seja especial, o correntista poderá retirar mais dinheiro do que tem no saldo, isto é, o saldo pode ficar negativo em contas especiais, mas não em contas normais • O correntista poderá também depositar valores e verificar o saldo atual • A conta inicialmente está fechada com saldo zero, não é especial e não pertence a um correntista em particular • Deve haver uma operação para abertura de conta após a sua criação (C) 2008 Gustavo Motta

  11. 2. Modelos orientados a objetos • Problema 2: Representar uma conta bancária • Representação das propriedades essenciais • Estado da conta • ? • Comportamento • ? (C) 2008 Gustavo Motta

  12. 2. Modelos orientados a objetos • Classes • Conceitualmente, conjunto de seres, objetos ou fatos que apresentam um ou mais aspectos distintivos em comum (Dic. Houaiss) • Do ponto de vista de programação • Uma classe especifica um conjunto de objetos com estrutura (variáveis do estado) e comportamento (operações) comuns • Padrão (fôrma) para criação de objetos • Objetos de uma classe são também chamados de instâncias da classe • Uma classe agrupa objetos com características iguais • Os modelos vistos na pseudo-linguagem dos exemplos anteriores nada mais são que classes de objetos! (C) 2008 Gustavo Motta

More Related