Codificar é algo muito pessoal, assim como escrever um artigo. Uma rápida olhada e já podemos ter ideia de quem o escreveu.
O programador leva para o projeto suas preferencias pessoais na maneira de nomear funções, classes, variaveis, arquivos ou mesmo na forma de fazer um loop. Os mais experientes - ou organizados - criam padrões para manter uma concistencia, e isso é excelente. O problema começa quando temos muitos programadores trabalhando nos mesmo codigos e cada um fazendo na sua maneira. Muitos projetos e empresas acabam adotando o seu padrão, que deve ser seguido por todos os envolvidos.
Temos então, cada projeto com sua forma e programar, que pode ser completamente diferente de outro. Podemos levar algumas horas somente para compreender a forma que esta organizado. Isso é um problema que remonta desde o inicio da era da programação.
Uma das tentativas mais famosas de um padrão unificado, foi proposto por Brian Kernighan e Dennis Ritchie (criadores da linguagem C) e descrito no livro C, a Linguagem de Programação: padrão ANSI, e ainda hoje muito usado.
Os padrões mais usados
Existem vários padrões usados pela comunidade PHP. Para aqueles que estão querendo adotar um, recomendo ler o padrão do PEAR, que engloba desde nomes de arquivos e funções ate a forma de fazer um loop, uma array multi-dimensional ou mesmo uma documentação.
Existe tambem o utilizado pelo framework Zend, que é uma evolução do usado no PEAR para a realidade do framework.
A vantagem de usar um desses é que eles já foram muito usados e “postos a prova”, até chegar num consenso.
Caso você esteja planejando usar um framework, opte por usar o padrão adotado por ele.
PHP Standards e o PHP 5.3
O PHP 5.3 traz novidades e que podem mudar muito a forma de como programamos hoje. O uso de namespace, lambda functions e outros podem bagunçar o codigo de qualquer um.
Não existe um padrão oficial para PHP. Por enquanto. Recentemente um grupo de desenvolvedores de varios frameworks, entre eles Symfony, Cake, Zend e se reuniram e criam um grupo para defenir esses padrões. Espera-se que todos os projetos existentes hoje como o PEAR, os frameworks, Wordpress, drupal e magento, alem dos novos, tenham uma mesma forma, principalmente agora com o advento do PHP 5.3.
A primeira versão esta disponivel e o grupo esta aberto a discussões para a melhoria. Nesta versão está definido a forma que será usada os namespaces, a maneira de criar uma execeção ou a pegar e a nomenclatura para classes e interfaces.
Verificando os padrões
Sempre é bom termos certeza que estamos seguindo os padrões. Assim como temos os analisadores W3C para HTML, temos uma ferramenta para o nosso codigo PHP. É o PHP_CodeSniffer. Essa ferramenta analisa o codigo e retorna todos os erros de sematica de seu codigo, para o padrão que você quiser. Vale lembrar que ele não verifica erros de codigo, apenas de formatação.
Um exemplo de uso seria:
$ phpcs /path/to/code/myfile.php FILE: /path/to/code/myfile.php -------------------------------------------------------------------------------- FOUND 5 ERROR(S) AND 1 WARNING(S) AFFECTING 5 LINE(S) -------------------------------------------------------------------------------- 2 | ERROR | Missing file doc comment 20 | ERROR | PHP keywords must be lowercase; expected "false" but found | | "FALSE" 47 | ERROR | Line not indented correctly; expected 4 spaces but found 1 47 | WARNING | Equals sign not aligned with surrounding assignments 51 | ERROR | Missing function doc comment 88 | ERROR | Line not indented correctly; expected 9 spaces but found 6 --------------------------------------------------------------------------------
Logo mais postarei um tutorial para integrar essa ferramenta com o SVN e um sistema de integração, visando garantir a qualidade do projeto.
Faça do seu jeito
Muitas vezes pegamos codigos de outros programadores, que não seguiram o padrão ou mesmo não tem um padrão. Alterar todo o projeto manualmente pode se tornar algo muito dispendioso e chato. Para facilitar nossa vida, existe o PHP_Beautifier. Ele reformata todo o codigo para a forma defenida por voce.
A linha abaixo reformata no padrão PEAR e indenta 2 tabs.
php_beautifier -t2 -l "Pear()" index.php index_pear.php
E você, qual tipo de padrão segue?
Veja Tambem
- None Found

3 Respostas para “Novo Padrão de Codigo para o PHP 5.3”
ótimo artigo..
Realmente é muito importante nos atentarmos para estes tipos de convensões.
Eu utilizo o padrão do Zend Framework.
Fábio T. da Costa, em 09 de Junho, 2009 as 11:18
[...] http://www.php-zine.net/2009/06/08/novo-padrao-de-codificacao-php-5/ Categories: Desenvolvimento Comentários (0) Trackbacks (0) Publicar um comentário [...]
PHP Beautifier – Pode ser um bom amigo! « Blog do 18, em 22 de Setembro, 2009 as 17:37
Bastante útil o artigo. Eu estou tentando me adequar ao padrão Zend.
Abs.
Sérgio Santana, em 23 de Novembro, 2009 as 13:55
Categorias
Arquivos
Artigos Recentes
Resources
Visite também