O documento discute os principais conceitos de orientação a objetos no PHP, incluindo:
1) Classes, objetos, atributos e métodos;
2) Herança e polimorfismo;
3) Visibilidade, métodos mágicos e a variável $this.
2. Introduzida a partir do PHP3
Fortalecida com a versão do PHP4
Com o PHP5 fica mais robusta e com os
principais conceitos da OO.
3. Base da OO
“O projeto da casa” (projeto do objeto)
Template de objeto
Estrutura estática utilizada para descrever
objetos mediante atributos e métodos
4.
5.
6.
7. Uma classe por arquivo
Padrões de nomeclatura:
Padrao_Zend_ou_Pear
PadraoCamelCase
8. “A casa em si”
Contém informações
Sua estrutura é dinâmica, ou seja seus atributos
podem mudar de valor durante a execução do
programa
Pode-se declarar diversos objetos de uma
mesma classe
14. Métodos mágicos
Inseridos a partir do PHP5
Sempre começam com _ _
14 no PHP 5.3
Os 2 principais são:
__construct()
__destruct()
Todos os métodos mágicos em:
http://www.php.net/manual/pt_BR/language.oop5.magic.php
15. Executado na instância do objeto
Não pode retornar nada
Pode sofrer sobrecarga
Pode receber argumentos
16. Acionado quando não existe mais referências
para o objeto ou quando chega ao fim do script
Pode ser útil em:
Banco de dados
Logs
19. Testem...
$renan = new Pessoa();
$renan->setNome('Renan');
echo $renan->getNome()."<br />";
20. A partir do PHP5
Public
Private
Protected
21. Esqueça o var
O encapsulamento é a chave da OO
22. Membros declarados assim só podem ser
acessados dentro da classe em que foram
declarados
Não pode ser acessado a partir de uma classe
descendente
Não pode ser acessado a partir do programa que
faz uso dessa classe
23. Membros declarados como protected podem ser
acessados dentro da classe
Podem ser acessados em classes descendentes
Não pode ser acessado a partir do programa que
faz uso dessa classe
24. Membros declarados como public podem ser
acessados livremente na classe em que foram
declarados
Podem ser acessados em classes descendentes
Pode ser acessado a partir do programa que faz
uso dessa classe
26. Para continuar o suporte ao encapsulamento
Usado para configurações de
Banco de dados e nomes de
usuários
Palavra chave const
Acesso :: (operador de resolução de escopo)
27. É um filho poder obter algumas características
do pai
Há casos em que é necessário ter objetos
idênticos com algumas funcionalidades a mais ou
então com as mesmas funcionalidades, mas com
comportamentos diferentes
34. Polymorphos (Grego) – Múltiplas formas
Várias classes podem possuir a mesma estrutura,
mas comportamento diferentes
Ao utilizar herança podemos não só aproveitar os
métodos da classe pai, como também fazer com
que algumas de suas características sejam
alteradas