programação orientada á objeto - paradigmas e implementação

42
PROGRAMAÇÃO ORIENTADA A OBJETO (Paradigmas e Implementação)

Upload: evandro-junior

Post on 12-Jul-2015

294 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Programação Orientada á Objeto - Paradigmas e Implementação

PROGRAMAÇÃO ORIENTADA A OBJETO

(Paradigmas e Implementação)

Page 2: Programação Orientada á Objeto - Paradigmas e Implementação

www.evandrojunior.pro.br [email protected]

pt.slideshare.net/EvandroJunior

Page 3: Programação Orientada á Objeto - Paradigmas e Implementação
Page 4: Programação Orientada á Objeto - Paradigmas e Implementação

“OO é um modelo computacional, não um

paradigma”

_Alan Kay

Page 5: Programação Orientada á Objeto - Paradigmas e Implementação

É um modelo Computacional!

Que contém paradigmas!

Page 6: Programação Orientada á Objeto - Paradigmas e Implementação

Paradigma Modelo imperativo da realidade; Padrão que permite organizar as idéias.

Page 7: Programação Orientada á Objeto - Paradigmas e Implementação

QUAIS SÃO OS PARADIGMAS DA POO?

Page 8: Programação Orientada á Objeto - Paradigmas e Implementação

PARADIGMAS ESSENCIAIS: Classes e Objetos Atributos e Métodos Herança e Polimorfismo Encapsulamento

Page 9: Programação Orientada á Objeto - Paradigmas e Implementação

Vamos com calma!

Page 10: Programação Orientada á Objeto - Paradigmas e Implementação

Como era antes da POO?

Page 11: Programação Orientada á Objeto - Paradigmas e Implementação

Programação Estruturada

Page 12: Programação Orientada á Objeto - Paradigmas e Implementação

Programação Orientada a Objeto x

Programação Estruturada

Page 13: Programação Orientada á Objeto - Paradigmas e Implementação

Programação Estruturada Consiste na criação de um conjunto de procedimentos (algoritmos) para resolver o problema.

Page 14: Programação Orientada á Objeto - Paradigmas e Implementação

Programação Estruturada A programação estruturada é formada apenas por três estruturas, que são: Sequência, onde uma tarefa é executada logo após a outra; Decisão quando um teste lógico é executado ou não; e Iteração que a partir do teste lógico algum trecho do código pode ser repetido finitas vezes.

Page 15: Programação Orientada á Objeto - Paradigmas e Implementação

Programação Estruturada Seus códigos ficam em um mesmo bloco, sendo mais difícil e demorado fazer uma alteração, pois teremos que olhar se nenhum outro código depende daquele, fazendo uma análise mais detalhada.

É fácil de entender, sendo usada em cursos introdutórios a programação.

Page 16: Programação Orientada á Objeto - Paradigmas e Implementação

P. Estruturada

DADOS GLOBAIS

Procedimento

Procedimento

Procedimento

Dados e Objetos

Método

Método

Dados e Objetos

Método

Método

Page 17: Programação Orientada á Objeto - Paradigmas e Implementação

Voltando a POO

Page 18: Programação Orientada á Objeto - Paradigmas e Implementação

CLASSES

Representa um conjunto de objetos com características afins. Uma classe define o

comportamento dos objetos através de seus

métodos, e quais estados ele é capaz de manter

através de seus atributos.

Exemplo de classe: Os seres humanos

Page 19: Programação Orientada á Objeto - Paradigmas e Implementação

Exemplo de Classe

Page 20: Programação Orientada á Objeto - Paradigmas e Implementação

OBJETO Um objeto é capaz de armazenar estados através de seus atributos e reagir a mensagens enviadas a ele. Exemplo de objetos da classe Humanos: João, José, Maria

Page 21: Programação Orientada á Objeto - Paradigmas e Implementação

Exemplo de Objeto

Page 22: Programação Orientada á Objeto - Paradigmas e Implementação

ATRIBUTOS São características de um objeto. Exemplos: Funcionário: nome, endereço, telefone, CPF,...; Carro: nome, marca, ano, cor, …; Livro: autor, editora, ano.

O conjunto de valores dos atributos de um determinado objeto é chamado de estado.

Page 23: Programação Orientada á Objeto - Paradigmas e Implementação

MÉTODOS Definem as habilidades dos objetos. Exemplo: Bidu é uma instância da classe Cachorro, portanto tem habilidade para latir, implementada através do método de um latido.

Page 24: Programação Orientada á Objeto - Paradigmas e Implementação

HERANÇA É o mecanismo pelo qual uma classe (subclasse) pode estender outra classe (superclasse), aproveitando seus comportamentos (métodos) e variáveis possíveis (atributos). Um exemplo de herança: Mamífero é superclasse de Humano. Ou seja, um Humano é um mamífero. Há herança múltipla quando uma subclasse possui mais de uma superclasse.

Page 25: Programação Orientada á Objeto - Paradigmas e Implementação

Exemplo de Herança

Funcionário

Nome RG Salario

Aumento(valor) Pagamento()

Chefe

Contas Gastos_extra Adicional_chefia

Pagamento_extra()

Page 26: Programação Orientada á Objeto - Paradigmas e Implementação

POLIMORFISMO Polimorfismo = várias formas É o princípio pelo qual duas ou mais classes derivadas de uma mesma superclasse podem invocar métodos que têm a mesma identificação (assinatura) mas comportamentos distintos.

Page 27: Programação Orientada á Objeto - Paradigmas e Implementação

Exemplo de Polimorfismo Animal

Tipo Cor Peso ...

Comer()

Cachorro

Comer() { “cachorro come ração...” }

Tigre

Comer() { “cachorro come osso...” }

Page 28: Programação Orientada á Objeto - Paradigmas e Implementação

ENCAPSULAMENTO Consiste na separação de aspectos internos e externos de um objeto. Este mecanismo é utilizado amplamente para impedir o acesso direto ao estado de um objeto (seus atributos), disponibilizando externamente apenas os métodos que alteram estes estados. Exemplo: você não precisa conhecer os detalhes dos circuitos de um telefone para utilizá-lo. A carcaça do telefone encapsula esses detalhes, provendo a você uma interface mais amigável.

Page 29: Programação Orientada á Objeto - Paradigmas e Implementação

Exemplo de Encapsulamento

Page 30: Programação Orientada á Objeto - Paradigmas e Implementação

Implementação: Programação

Orientada e Objeto

Page 31: Programação Orientada á Objeto - Paradigmas e Implementação

Exemplo Programação Estruturada

Page 32: Programação Orientada á Objeto - Paradigmas e Implementação
Page 33: Programação Orientada á Objeto - Paradigmas e Implementação

Exemplo Programação Orientada a Objetos

Page 34: Programação Orientada á Objeto - Paradigmas e Implementação
Page 35: Programação Orientada á Objeto - Paradigmas e Implementação
Page 36: Programação Orientada á Objeto - Paradigmas e Implementação
Page 37: Programação Orientada á Objeto - Paradigmas e Implementação

Implementação: Programação Orientada a Objeto em

PHP

Page 38: Programação Orientada á Objeto - Paradigmas e Implementação
Page 39: Programação Orientada á Objeto - Paradigmas e Implementação
Page 40: Programação Orientada á Objeto - Paradigmas e Implementação

Um objeto da classe deve ser instanciado pelo operador new. O operador permite referenciarmos atributos e métodos do objeto.

Page 41: Programação Orientada á Objeto - Paradigmas e Implementação

Lesson: Object-Oriented Programming Concepts (em inglês) Oracle Corporation.

Pablo Dall'Oglio. PHP Programando com Orientação a Objetos: Inclui Design Patterns. 1. ed. São Paulo: Novatec, 2007. 576 pp.

James Martin, Princípios de Análise e Projeto Baseado em Objetos, 1994, Editora Campus.

FABRICA DE SOFTWARE. Disponível em: <http://fabrica.ms.senac.br/2013/04/programacao-estruturada-versus-programacao-orientada-a-objetos/> Acesso em: 15 Dez. 2014.

Page 42: Programação Orientada á Objeto - Paradigmas e Implementação

www.evandrojunior.pro.br [email protected]

pt.slideshare.net/EvandroJunior