Código PHP - Você segue algum padrão?
Quando inicia seu código, você pensa em algum padrão de formatação? Ou na definição do namespace da classe? Ou prefere seguir um padrão somente seu? Ou como muitos nem sabia que um código poderia ter um padrão definido e semelhante a grande projetos no mercado?
Eu sempre gostei de seguir padrões de código, pois isso ajuda a outros desenvolvedores (que seguem esses padrões) se adaptar melhor em projetos diferentes. Por estes motivo nunca criei o meu próprio padrão, procuro encontrar um dentre a comunidade PHP ou ZendFramework. E durante esta busca encontrei a galera do PHP-Fig.
O que é o PHP-Fig?
The idea behind the group is for project representatives to talk about the commonalities between our projects and find ways we can work together. Our main audience is each other, but we’re very aware that the rest of the PHP community is watching. If other folks want to adopt what we’re doing they are welcome to do so, but that is not the aim.
O que realmente isso significa?
Representantes de algumas frameworks PHP (ZendFramework, Symfony, CakePHP, etc..) e outros projetos que tem seu código escrito em PHP se juntam para debater alguns pontos semelhantes entre seus fontes. Assim tentam definir padrões para que estes projetos possam trabalhar em conjunto de forma fácil e rápida (plug-and-play code) e terem ao menos um padrão de formatação e definição de layout PHP parecidos.
Como funciona?
Todas os padrões são divididos entre PSR’s (Proposing a Standards Recommendation). Hoje o PHP-Fig tem 4 PSR’s. São elas:
- PSR-0: Tem como objetivo definir padrões para definicões de classes e namespaces afim centralizar o autoload para todos os projetos que seguem este padrão ao invés de você ter que escrever um autoload para ZF e outro para o Doctrine.
- PSR-1: Fornece regras, como as tags PHP permitidas em um código, Enconding, nome de métodos, etc.
- PSR-2: Define os padrões de código, como formatar uma função, um if, um método com vários argumentos, etc.
- PSR-3: Descreve uma interface para bibliotecas de LOG.
Segue o link para quem estiver interessado PHP-FIG (opens in a new tab).
E sigam a lista, pois este padrão está em constante evolução onde sugestões são bem-vindas.
Espero ter ajudado!!!! :D