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

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

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

Apresentações semelhantes


Apresentação em tema: "Introdução à Programação Um enfoque orientado a construção de modelos em programas baseados em objetos Gustavo Motta Departamento de Informática - UFPB."— Transcrição da apresentação:

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 (C) 2008 Gustavo Motta2 2. Modelos orientados a objetos Conceito 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 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 Objetos são entidades que têm Identidade Identidade Atributos determinando um estado Atributos determinando um estado Comportamento Comportamento Objetos mais simples são compostos para formar objetos mais complexos 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 A execução de operações permite a troca de informações entre os objetos

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

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

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

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

7 (C) 2008 Gustavo Motta7 Problema 2: Representar uma figura Problema 2: Representar uma figura Representação textual numa pseudo-linguagem Representação textual numa pseudo-linguagem 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 Declaração das operações do objeto Figura Declaração das variáveis do estado do objeto Figura

8 (C) 2008 Gustavo Motta8 1 2 3 Problema 2: Representar uma figura Problema 2: Representar uma figura Criação de figuras com base num modelo Criação de figuras com base num modelo 2. Modelos orientados a objetos Figura fig1 = criar Figura(); Memória x y visivel 0 0 falso A variável fig1 declarada do tipo Figura é uma referência para o objeto criado na memória na posição 1 Fig1.movePara(10, 15); 15 10 Fig1.mostra(); verdadeiro A partir de um mesmo modelo, pode-se criar um número arbitrário de objetos Figura fig2 = criar Figura(); x y visivel 0 0 falso Fig2.mostra(); verdadeiro Fig2.movePara(3, 9); 3 9 Fig1.apaga(); falso Note-se que foi adotada uma visão abstrata de uma figura com base em suas características essenciais 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

9 (C) 2008 Gustavo Motta9 Objetos Objetos Conceitualmente são entidades que têm um estado, um comportamento e uma identidade Conceitualmente são entidades que têm um estado, um comportamento e uma identidade Abstraem entidades do mundo real Abstraem entidades do mundo real Do ponto de vista de programação Do ponto de vista de programação Um objeto é uma coleção de operações que compartilham um estado Um objeto é uma coleção de operações que compartilham um estado Operações determinam o comportamento do objeto Operações determinam o comportamento do objeto Operações também são chamadas de métodos 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 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 O estado compartilhado é escondido (encapsulado) do mundo exterior Apenas as operações podem acessá-lo para consulta ou modificação 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 Variáveis que determinam o estado interno de um objeto são chamadas de variáveis de instância 2. Modelos orientados a objetos

10 (C) 2008 Gustavo Motta10 Problema 2: Representar uma conta bancária simplificada 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 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 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 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 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 Deve haver uma operação para abertura de conta após a sua criação 2. Modelos orientados a objetos

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

12 (C) 2008 Gustavo Motta12 Classes Classes Conceitualmente, conjunto de seres, objetos ou fatos que apresentam um ou mais aspectos distintivos em comum (Dic. Houaiss) 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 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 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 Padrão (fôrma) para criação de objetos Objetos de uma classe são também chamados de instâncias da classe Objetos de uma classe são também chamados de instâncias da classe Uma classe agrupa objetos com características iguais 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! Os modelos vistos na pseudo-linguagem dos exemplos anteriores nada mais são que classes de objetos! 2. Modelos orientados a objetos


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

Apresentações semelhantes


Anúncios Google