Changes between Version 5 and Version 6 of WF/PadroesdeCodificacaoPHP
- Timestamp:
- 07/09/08 14:33:32 (16 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
WF/PadroesdeCodificacaoPHP
v5 v6 20 20 * Comentários adicionais explicativos, no meio do código, também são recomendados; 21 21 22 * Comentários estilo multi-linha (/* */) e linha única (//) são recomendados, ao passo que estilos Perl/shell (#) devem ser evitados. 22 * Comentários estilo multi-linha (/* */) e linha única (//) são recomendados, ao passo que estilos Perl/shell (#) devem ser evitados; 23 24 * No comentário de elementos como classes ou funções, evitar repetir a classe do elemento na descrição. Por exemplo, no comentário de uma função, evitar incluir a palavra "função". 23 25 24 26 == Incluindo código == 25 27 26 * Usar require_once ao incluir incondicionalmente arquivos de classe. 27 28 * Usar include_once ao incluir condicionalmente arquivos de classe. 29 30 * require_once e include_once não são funções, portanto parênteses não devem envolver o nome do arquivo. 28 * Includes somente no arquivo shared.php. Caso seja absolutamente necessário incluir algum arquivo fora deste local, atentar para estas recomendações: 29 * Usar require_once ao incluir incondicionalmente arquivos de classe. 30 * Usar include_once ao incluir condicionalmente arquivos de classe. 31 * require_once e include_once não são funções, portanto parênteses não devem envolver o nome do arquivo. 31 32 32 33 == Convenções de nomenclatura == … … 57 58 58 59 * Se o projeto precisar definir variáveis globais, seus nomes devem iniciar com um underscore seguido pelo nome do projeto e outro underscore. Por exemplo, o pacote PEAR usa uma variável global chamada $_PEAR_destructor_object_list. 60 61 === Nome de arquivos === 62 63 * De atividades: mesmo nome das atividades, adicionando a extensão .php. Exemplo: Compor.php, Escrever.php, Finalizar.php; 64 65 * De templates: mesmo nome das atividades e respectivas ações, adicionando a extensão .tpl. Exemplo: Compor.tpl, Imprimir.tpl, Visualizar.tpl; 66 67 * De classes: segue o formato class.nomeclasse.nomesuperclasse.inc.php. 59 68 60 69 == Estruturas de controle == … … 168 177 * Definir apenas uma classe por arquivo .php; 169 178 179 * Classes com métodos contendo argumentos String esperando valores pré-definidos devem declarar atributos internos escritos em maiúscula para funcionarem como constantes com os valores válidos, visando minimizar erros de digitação do argumento e aproveitar o autocomplete dos editores para membros de classe. Por exemplo: 180 181 {{{ 182 <?php 183 184 class Classe 185 { 186 var $VERSION = "1.0"; 187 188 function showVersion($var) 189 { 190 echo $var; 191 } 192 193 function Classe() 194 { 195 $this->showVersion($this->VERSION); 196 } 197 } 198 ?> 199 }}} 200 201 * Deve-se seguir esta sequência de definições em uma classe: 202 * Declaração de constantes; 203 * Declaração de atributos; 204 * Declaração de construtores; 205 * Declaração de métodos. 206 170 207 == Créditos == 171 208