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

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

Orientação a Objetos Parte I Introdução a POO (Programação Orientada a Objetos)

Apresentações semelhantes


Apresentação em tema: "Orientação a Objetos Parte I Introdução a POO (Programação Orientada a Objetos)"— Transcrição da apresentação:

1 Orientação a Objetos Parte I Introdução a POO (Programação Orientada a Objetos)

2 Histórico – Gerações de Linguagens de Programação  Primeira Geração: Linguagem de máquina  Segunda Geração: Linguagem de montagem (assembly)  Terceira Geração: Linguagens de alto nível  Quarta Geração: Linguagens para a geração de aplicações  Geração Orientada a Objetos: Linguagens voltadas para o reuso e manutenção

3 Histórico de Linguagens Primeira Geração – Ling. Máquina  Equipamentos muito caros  Dificuldades na programação de dispositivos  Baixa demanda para desenvolvimento de aplicações

4 Histórico de Linguagens Segunda Geração - Assembly  Custo do equipamento ainda alto  Permitia transferir um pouco do trabalho para o programador  Programação por meio de símbolos que eram traduzidos em linguagem de máquina

5 Histórico de Linguagens Terceira Geração – Alto Nível  Equipamento relativamente mais barato  Mais tarefas antes atribuídas ao programador, foram transferidas para programas como : Interpretadores e Compiladores

6 Histórico de Linguagens Quarta Geração – Aplicações  As ferramentas de desenvolvimento e as bibliotecas de aplicação se popularizaram nesse período  O usuário passou então a desfrutar de capacidades que antes eram reservadas aos desenvolvedores

7 Histórico de Linguagens Quinta Geração – POO  Enfrenta hoje o desafio de efetuar a manutenção e o reuso das milhares de aplicações desenvolvidas pelas gerações anteriores  A orientação a objetos é um paradigma de programação que oferece vários mecanismos voltados para o reuso e a manutenção de sistemas de computador. O que torna a programação orientada a objetos tão atraente é, principalmente, a possibilidade de gerenciar de forma mais simples problemas bastante complexos e de reusar código de forma mais eficiente

8 Os três pilares da OO  Encapsulamento  Herança  Polimorfismo

9 Pilar - Encapsulamento  O conceito de encapsulamento está intimamente ligado com o conceito de abstração. Num dado objeto somente interessa ao cliente as funções que ele executa e não a implementação da mesma. Na parte de interface temos a descrição das operações que o objeto executa, o que é acessível ao cliente, a implementação de tais operações fica encapsulada e só é visível ao próprio objeto

10 Pilar - Herança  A herança possibilita uma classe aproveitar o comportamento de outra classe, além de adaptar esse comportamento aproveitado, tornando-o único.  Principal característica que possibilita a OO a implementar fácil reuso de aplicações existentes

11 Pilar - Polimorfismo  Poli (múltiplas )  Morfismo (formas)  O sentido da palavra polimorfismo é o uso de um único nome para definir várias formas distintas. Em linguagens de programação, polimorfismo é uma facilidade que permite que dois ou mais objetos diferentes respondam a mesma mensagem.  A capacidade de objetos executarem uma mesma tarefa de maneiras diferentes  Exemplo : A capacidade de desligar algo : lâmpada, carro, celular, computador, rádio, etc...

12 Classes  Uma classe define um MODELO que descreve uma entidade real ou abstrata  As classes são fábricas de objetos  Exemplo : A planta de uma casa

13 Classes – Atributos e Métodos  Uma Classe define o ESTADO e o COMPORTAMENTO de uma entidade (objeto).  Chamamos de ATRIBUTOS às partes responsáveis por definir o ESTADO de um objeto  Chamamos de MÉTODOS às partes responsáveis por definir o COMPORTAMENTO de um objeto

14 Classes - Atributos  Os atributos são variáveis responsáveis por armazenar informações associadas a uma determinada classe  Exemplo : Para uma classe Pessoa : - cor do cabelo - cor dos olhos - altura - peso

15 Classes - Métodos  São procedimentos definidos para uma classe, responsáveis por realizar tarefas pertinentes a mesma, alterando assim os ATRIBUTOS ou o ESTADO de um objeto.  Exemplo : Classe Pessoa : - Acordar - Andar - Estudar - Cantar

16 Acessibilidade de uma Classe  Define a forma com que um elemento (atributo ou método) pode ser visto e utilizado por outras classes.  Os qualificadores em java : public, private, protected e static, são responsáveis por definir a visibilidade de atributos e métodos

17 Acessibilidade - public  Define que um atributo ou método é de acesso “público”. Qualquer classe pode acessar

18 Acessibilidade - protected  Define que um atributo ou método é de acesso “protegido”. Apenas classes “filhas” (que possuem herança) podem acessar

19 Acessibilidade - private  Define que um atributo ou método é de acesso “privado”. Apenas a própria classe possui acesso

20 Acessibilidade - static  Define que um atributo ou método é de acesso “estático”.  Atributos ou Métodos estáticos pertencem apenas à Classes, e não a Objetos (instâncias de classes)  static pode ser combinado com public, protected e private

21 Classes X Objetos  Classe é um modelo de Objeto  Objeto é a realização de uma Classe  Um objeto é uma instância de uma classe  Podemos obter 1 um mais objetos de uma classe  Exemplo : Classe Pessoa : Objetos : - João - Maria - José - Rute

22 Exemplo – Classes e Objetos Pessoa pes1 = new Pessoa(“Joao”) Pessoa pes2 = new Pessoa(“Maria”) System.out.println( pes1.nome ) System.out.println( pes2.nome ) // cria dois objetos da classe Pessoa // imprime o nome da primeira pessoa // imprime o nome da segunda pessoa

23 Métodos Construtores  São métodos especiais chamados pelo sistema no momento da criação de um objeto  Um objeto possui pelo menos um construtor  Um objeto pode possuir mas do que um construtor, com assinaturas diferentes  Um construtor tem sempre o mesmo nome de sua Classe

24 Métodos Acessores e Mutantes  Métodos Acessores e Mutantes são conceitos de OO usados para definir métodos responsáveis por ler e alterar atributos de uma classe.  São utilizados na criação da Interface de uma classe com o ambiente externo  Acessores (Ler Atributos)  Mutantes (Alterar Atributos)  Em java getXXX e setXXX

25 Orientação a Objetos Parte II... ...


Carregar ppt "Orientação a Objetos Parte I Introdução a POO (Programação Orientada a Objetos)"

Apresentações semelhantes


Anúncios Google