No dia 13 de julho foi anunciado no site php.net o fim da vida do PHP 4. O anúncio veio dois anos depois do lançamento da versão 5. A recomendação aos desenvolvedores é que até o final deste ano suas aplicações sejam adaptadas para rodar no PHP 5.
Para os desenvolvedores mais experientes, principalmente para os adeptos da programação orientada a objetos, este anúncio certamente foi recebido com satisfação. Todos sabemos que a versão 4 do PHP é poderosa, mas a imagem de que projetos desenvolvidos em PHP tem a vantagem de que “até meu sobrinho pode terminar” infelizmente está enraizada na mente de muitos gerentes de TI.
Em sua versão 5, o PHP chegou à idade adulta. Já era esperado pela comunidade o fim da linha do desenvolvimento do PHP 4 e o site php.net disponibilizou um guia de migração de softwares desenvolvidos para a versão 4. Veremos neste artigo as principais recomendação do guia:
Incompatibilidades
As principais incompatibilidades estão na orientação a objetos, como os modificadores de acesso, tratamento de exceções, etc.
Novas funções
A variedade de funções é um dos pontos fortes da linguagem. Na versão 5, foram adicionadas mais algumas dezenas delas.
Novas diretivas
Foram introduzidas novas configurações ao php.ini.
Banco de dados
No PHP 5, a extensão SQLite e sua engine são empacotados e compilados por padrão. No entanto, a partir da versão 5.1.0 do PHP você precisa ativar manualmente a extensão no php.ini. Além disso, o SQLite passa a depender do PDO (PHP Data Objects). Foi introduzida, ainda, a nova extensão MySQLi.
Novo modelo de objeto
O novo modelo de suporte à orientação a objetos foi, sem dúvida, o que mais chamou a atenção na versão 5 do PHP e certamente será assunto para milhares de artigos. O novo modelo de objetos está todo descrito na documentação do site: http://www.php.net/manual/pt_BR/language.oop5.php.
Após esta breve descrição das recomendações do guia de migração do PHP 4 para o PHP 5, recomendo visitar o link http://www.php.net/manual/en/migration5.php, onde encontram-se as descrições completas dessas mudanças.
Conclusão
Os analistas e programadores que participam de projetos PHP bem planejados, de grande porte, sabem que a imagem ruim adquirida pelo PHP se deu, em parte, pelos milhares de sistemas produzidos com códigos de má qualidade (ausência de padrões, excesso de scripts estruturados/repetitivos, etc). Além disso, muitos amadores se intitulam programadores plenos em PHP simplesmente porque apreenderam a fazer uma interação com o MySQL. No entanto, estão pouco interessados nas vantagens de abstrair a camada de persistência.
Para que o sucesso do PHP como linguagem corporativa seja ainda maior, a própria comunidade deve incentivar o desenvolvimento de softwares bem-pensados. Isso implica em conhecer a fundo a orientação objetos (não apenas a técnica, mas principalmente os conceitos); saber quando aplicar padrões de projeto; ser rígido com questões que envolvem segurança; construir códigos limpos etc. Já contamos com excelentes frameworks como, por exemplo, a Zend Framework, a Symfony, a CakePHP e a Prado dentre tantas outras, embora muitos ainda não se interessem nas vantagens de utilizá-las.
O sucesso do PHP é incontestável. A imagem de linguagem empresarial está se consolidando aos poucos, assim como a disponibilidade de profissionais sérios. Isto, graças a iniciativas de empresas como a Zend, que oferece certificações e excelentes produtos que incentivam um estudo mais aprofundado da linguagem.
Não é fazer um software em PHP ou em Java que determinará a qualidade e a confiabilidade do produto, mas a forma com que a equipe trabalhou para desenvolvê-lo. Lembre-se: ninguém aprende a programar em 21 dias, em qualquer que seja a linguagem.
Referências
- Php.net – http://www.php.net
- “Aprende a programar em 10 anos” (http://pihisall.wordpress.com/2007/03/15/) do original “Teach Yourself Programming in Ten Years” (http://norvig.com/21-days.html).
- Zandstra, Matt – PHP 5 Objects, Patterns, Pratice. Berkley, CA: Apress, 2006
- Minetto, Elton Luís – Frameworks para desenvolvimento em PHP, São Paulo: Novatec, 2007