Abordagem exemplificada de orientação à objeto com PHP 5

Este artigo vem a complementar um outro que escrevi sobre orientação a objeto nos moldes do PHP4. Dessa vez venho trazendo o que houve de mudanças para o PHP5 com duas classes que exemplificam bem essas mudanças.

[ Hits: 36.305 ]

Por: Evaldo Barbosa em 17/08/2006


Introdução



Na natureza nada se cria, nada se perde, tudo se transforma. Assim já dizia Lavoisier e assim digo sobre os códigos escritos para web. Por que não reaproveitar o código que deu tanto trabalho pra desenvolver? Por que não criar estruturas que facilitem isso? A resposta é simples: Não tem motivo nenhum para isso, essa é a verdade.

Isso é o que realmente me instiga a escrever novos artigos sobre o PHP e sua facilidade de reaproveitamento de código. Antes de mais nada, farei as seguintes convenções para este artigo. São elas a seguir:
  • Palavras reservadas: palavras que somente a linguagem pode usar. Ex: function, class, ...
  • Ciclo de vida da classe: aqui ponho o ciclo de vida não só no tempo de execução, ponho também em tempo de projeto.
  • Método: Em PHP os métodos correspondem às funções, uma vez que não existem estruturas 'method' nessa linguagem (nem em outra que eu conheça).
  • Atributos: São as variáveis de uma classe, as chamadas propriedades de objeto (property) do Delphi.

Para aqueles que não viram o meu artigo anterior, que foi uma abordagem, também exemplificada ao padrão de classes em PHP4, gostaria que fizessem um comparativo com esse para que pudessem ter uma melhor visão das mudanças:
Sendo assim... vamos lá, né?

    Próxima página

Páginas do artigo
   1. Introdução
   2. Construtores e Destrutores, o que mudou?
   3. A filosofia dos 'getters' e dos 'setters'
   4. Construindo uma classe 'Pessoa'
   5. Derivando 'Funcionario' de 'Pessoa'
   6. Mudanças numa nova versão. O que ainda falta?
Outros artigos deste autor

Abordagem exemplificada à Orientação a Objetos com PHP

Construindo componentes em PHP e jQuery

Gerando gráficos com PHP e highcharts.com

Utilizando PHP e Apache para desligar um Ubuntu

Macromedia Studio 8 no Wine em detalhes

Leitura recomendada

PHP 5 - Compilando com as melhores práticas com PHP 4

Guia completo do Ocomon no Linux - Módulo cliente, abertura de ocorrência (exclusivo VOL)

Debugando aplicações PHP com Xdebug e Eclipse PDT

PHP >= 5.1 x horário de verão brasileiro

BolachaMALPPH Apache X Lighttpd X PHP/FastCGI X APC X HTTPREF X MySQL

  
Comentários
[1] Comentário enviado por removido em 18/08/2006 - 08:58h

Parabéns collapse pelo artigo bem explicado...
Acredito que ajudará iniciantes, e aqueles que ainda têm medo de migrar para o PHP5, a utillizarem cada vez mais essa versão...

E tomara que muita coisa melhore nas próximas versões do PHP. Como a manipulação de eventos (dito por você), e tipagem forte de atributos/métodos...

Uma outra funcionalidade que acho interessante seria a possibilidade de se criar propriedades, como o C# (DotNet).

Abraços,

[2] Comentário enviado por F4xl em 19/08/2006 - 01:07h

Muito bom o artigo, Evaldo!

Principalmente para quem está iniciando os estudos em PHP. Um comentário que eu gostaria de ler aqui é sobre como o PHP vai se comportar no mercado concorrendo com a plataforma .NET da Microsoft, uma vez que todos parecem querer migrar para ela.

Abraços a todos!

[3] Comentário enviado por evandrofisico em 19/08/2006 - 20:52h

Para fazer um destructor em php4 é necessária uma pequena gambiarra, colocando dentro da funcao constructor um register_shutdown_function(array(&$this, 'quit'))

onde quit é o nome da funcao a ser executada antes do fim do script

[4] Comentário enviado por rockedsonbr em 30/08/2006 - 11:43h

Muito bom....

Algumas dúvidas?
O método __destruct() tem q ser envocado após o uso da classe?

$myvar->__destruct();

Posso usar unset($myvar); isto já resolve???

Andei lendo alguns artigos e pessoas tem explicações diferentes... qual o mais indicado?

Abraço


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts