GuZ

PHP Orientado a Objeto, Segunda Parte.

Categoria(s): (Nerd) por GuZ em 20-10-2008

Tags : , , , , ,

Como eu prometi no post anterior, vou colocar aqui no Wii Are Nerds a segunda parte do tutorial sobre como “brincar” de orientação a objetos com PHP.

Subclasses:

Uma classe pode trabalhar com uma extensão, herdando assim todas as variáveis e funções da classe-pai. No PHP não é permitido uma herança múltipla, ou seja, a classe-filha só pode ter um pai ou simplificando uma classe pode ser extensão de apenas UMA outra classe.

Código:

  1. class novaconta extends conta{
  2.          var $num;
  3.          function vernum(){
  4.                return $this->num;
  5.           }
  6. }

A classe que eu mostrei agora tem origem na classe do exemplo anterior ela tem todas as variáveis, todas as funções da classe anterior e ainda ganhou a variável $num e a função vernum().

No mundo real, poderíamos pegar uma impressora e utiliza-la como exemplo:

  1. class impressora {
  2.       $var cartucho;
  3.        $var tinta;
  4.       function imprimir()
  5.       {
  6.       }
  7. }
  8. class multifuncional extends impressora {
  9.      $var copiadora;
  10.      …
  11.      function scan()
  12.      {
  13.      }
  14.     
  15.     function copiar()
  16.    {  
  17.    
  18.   }
  19. }

É bom lembrar que o PHP trabalha de forma estruturada, ou seja, ele lê o código de cima para baixo. Então é bom ver a ordem em que as classes são criadas.

As Classes precisam ser criadas ANTES de serem usadas, por exemplo, se eu tivesse colocado uma chamada para a função imprimir() na primeira linha do código, o PHP não encontraria minha impressora.

(obs… o exemplo da impressora é apenas para facilitar a abstração)

Construtores:

Um construtor é uma função que é chamada automaticamente quando a classe é definida pelo operador new. e deve ter o mesmo nome da classe que ele pertence:

  1. class conta{
  2.     var $saldo;
  3. function conta()
  4. {
  5.     $this->saldo = 100000000 # Queria que o Banco do Brasil tivesse feito isso qdo eu abri minha conta :P
  6. }
  7. function ver()
  8. {
  9. ….
  10. }^
  11. }

Vejam que eu resumi o código (para o post não ficar muito grande).

Agora nosso banco tem uma função que adiciona R$ 100.000.000,00 no saldo de uma conta quando ela é criada. Tudo isso foi definido na função conta(). O mais interessante é que os construtores suportam argumentos, o que torna este recurso muito mais interessante.

É importante ressaltar que embora os valores sejam herdados, o construtor da classe pai não é iniciado quando se chama um operador da classe-filha.

Bom, minha introdução a Orientação a Objeto fica por aqui, e agora cabe a você desenvolver seus programas orientados a objeto utilizando a linguagem PHP.

Algumas ferramentas para desenvolver em PHP usando Orientação a Objeto:

ZendStudio: Para quem está programando em PHP e precisa usar OO, o Zend Studio é a melhor ferramenta que eu conheço para programar. O Problema é que eu não encontrei ele disponível para compra no Brasil.

Zend Framework. Pra que ficar reinventando a roda? Use o framework ZEND e facilite seu trabalho. ;-).

Nenhum post relacionado.

Comentários:

Postar um comentário