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

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

Orientação a Objetos Parte I

Apresentações semelhantes


Apresentação em tema: "Orientação a Objetos Parte I"— 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"

Apresentações semelhantes


Anúncios Google