Sunteți pe pagina 1din 15

PESQUISA CHO DE FBRICA

CODIFICAO

PADRO

DE

DE

SOFTWARE

CDIGO PARA LINGUAGEM PHP

SINCERO ZEFERINO FILHO

Santa Luzia, 28 de abril de 2014.

SINCERO ZEFERINO FILHO

PADRO

DE

CDIGO PARA LINGUAGEM PHP

Padro Para edio de cdigo fonte com a


linguagem PHP em: Anlise de Sistemas
Orientada a Objetos. O Objetivo deste
trabalho mostrar as escolhas feitas pelo
autor, para padronizao de seus projetos
pessoais, utilizando esta linguagem.

Santa Luzia, 2014

Sumrio
1 Introduo...................................................................................2
2 Objetivos.....................................................................................3
2.1 Objetivo geral..................................................................................3
2.2 Objetivos especficos.........................................................................3

3 Estratgias..................................................................................4
3.1 Observando os desenvolvedores.........................................................4
3.2 Participando dos grupos de discusso..................................................4
3.3 Estilo prprio....................................................................................4

4 Definies....................................................................................5
5 O contedo de um sistema em PHP.............................................6
6 A escrita do cdigo Fonte............................................................7
7 A nomenclatura dos itens do sistema..........................................9
8 Concluso..................................................................................11
9 Licenciamento...........................................................................12
Referncias...................................................................................13

1 Introduo
Para todo trabalho que envolva algum tipo de texto necessrio e bastante eficiente adotar um padro de escrita e nomenclatura.
A inteno aqui agrupar as opes feitas pelo autor para padronizao
de seus trabalhos utilizando a linguagem PHP.
Os padres de cdigo consultados mostram que existem
inmeras possibilidades de se escrever um cdigo fonte, e estes adquirem
linhas estticas muito diferentes, mesmo que obedeam aos padres recomendados para a linguagem em questo.
O manual Code Standadards elaborado por Walker de
Alencar Oliveira, disponvel em: < http://www.walkeralencar.com/PHPCodeStandards.pdf >,

teve grande influncia neste trabalho.

2 Objetivos
Agrupar as escolhas do autor para padronizar a sua edio de cdigo fonte com a linguagem PHP.

2.1 Objetivo geral


Ser uma referncia para elaborao de cdigo fonte em
PHP.

2.2 Objetivos especficos


a) Definir a estrutura de um projeto PHP;
b) Definir o posicionamento dentro do cdigo dos diferentes elementos tais como: indentao, parnteses,
chaves, etc;
c) Definir um padro de nomenclatura para diretrios,
arquivos, variveis, objetos, etc.

3 Estratgias
Qualquer padronizao que queira fazer valer esse nome
deve iniciar pelas normas relativas ao assunto em questo e esse autor
parte da consulta a diversos portais de desenvolvedores e principalmente
ao portal PHP <http://php.net/manual/pt_BR/index.php >, acesso: 29-04-2014.

3.1 Observando os desenvolvedores


Excelentes prticas de codificao so encontradas nas
inmeras pginas de desenvolvedores, basta uma curta pesquisa em algum buscador da internet para encontr-los.

3.2 Participando dos grupos de discusso


Os incontveis grupos de discusso presentes nas redes
sociais tambm so outra fonte de consulta.

3.3 Estilo prprio


O que faz a diferena no final o estilo pessoal daquele
que codifica j que as possibilidades oferecidas pelo padro so muitas,
ento, seguir as linhas do bom senso o principal conselho.

4 Definies
Algumas definies se fazem necessrias para um bom
entendimento deste texto.
a) UpperCamelCase: Nome composto, tendo as palavras agrupadas (sem espaamento entre elas) e com
a primeira letra da cada palavra em maiscula;
b) UPPER_CASE: Nome composto, com todas as palavras totalmente em maisculas e separadas pelo caractere '_' sublinhado;
c) lowerCamelCase: Variao do UpperCamelCase
exceto pela inicial da primeira palavra que minscula, o restante segue sem alterao;

5 O contedo de um sistema em PHP


Um projeto em PHP um pacote composto de uma srie
diretrios (pastas) contendo os diferentes documentos de cdigo, imagens, informaes, etc. Veja uma sugesto simples, na figura Abaixo.

Figura 1: Estrutura das pastas de um sistema em PHP.

Descrio do contedo depositado em cada um dos diretrios:


a) Class Todos os arquivos das classes do sistema esto neste diretrio;
b) Css Arquivos de folhas de estilo CSS;
c) Est Arquivos responsveis pela estruturao do
sistema;
d) Img Arquivos de imagens a serem exibidas nas
pginas;
e) Impres Arquivos de pginas impressas diretamente sem exibio prvia;
f) Info Arquivos de informaes tais como: padro
de cdigo e leia-me;
g) Js Arquivos de JavaScript;
h) Pag Arquivos das pginas do sistema.

6 A escrita do cdigo Fonte


Para que um cdigo fonte seja legvel e de fcil compreenso, mesmo que muito tempo se passe e que vrios profissionais venham a trabalhar no mesmo imprescindvel a padronizao dos diferentes tpicos que o compem.
a) Cabealho Nesta parte do cdigo necessrio registrar algumas informaes como segue.
/*
* @file NomeDoArquivo[.php] [.class.php]
* @package [Pacote ao qual pertence o arquivo]
* @author [nome do autor] <[e-mail do autor]>
* @copyright [Informacoes de Direitos de Copia]
* @license [link da licenca] [Nome da licenca]
* @link [link de onde pode ser encontrado esse arquivo]
* @version [Versao atual do arquivo]
* @since [Arquivo existe desde: Data ou Versao]
*
* [Descricao do arquivo].
*
* [Outras informacoes].
*/

b) Codificao UTF-8;
c) Indentao Quatro espaos na tabulao;
d) Tamanho da linha Mximo 80 caracteres;
e) Limitador de cdigo Sendo ele um pequeno trecho de uma linha ou se estendendo por vrias linhas
se deve usar tags completas;

Em uma linha.
...CodigoHtml <?php codigoPHP ?> CodigoHtml...

Mais de uma linha.


...CodigoHtml
<?php
CodigoPHP;
CodigoPHP;
CodigoPHP;
CodigoPHP;
?>
CodigoHtml...

f) Parenteses O conjunto que inclui os parnteses


pode ocupar apenas uma linha ou ter um grande nmero de argumentos que faa com que se estenda
por vrias;

Em uma linha:
...minhaFuncao($x, $horas) {}

Em vrias linhas:
...minhaFuncao
(
$Argumento1,
$Argumento2,
$Argumento3,
)
{}

g) Chaves Assim como os parnteses, estas podem


estar na mesma linha ou ocupando vrias;

Em uma linha:
...minhaFuncao(){Return $z;}

Em vrias linhas:
...minhaFuncao()
{
Linha1;
Linha2;
Linha3;
}

h) String formada por texto e variveis Aqui novamente se repete a mesma abordagem dos parnteses e chaves;

Em uma linha:
...echo Texto1 .$a. texto2 .$b. .$c;

Em vrias linhas:
...echo Texto1
.$a.
.funcao1($r)
.texto2
.$b
.texto3;

7 A nomenclatura dos itens do sistema


A linguagem PHP Case Sensitive, ou seja, qualquer diferena na grafia dos nomes entendida como diferena entre esses nomes.
Nos nomes em PHP permitido apenas o uso de
caracteres da tabela ASCII ou seja, Letras (apenas as do alfabeto, sem
acento ou '') e Nmeros, sendo que o incio destes nomes deve ser feito
obrigatoriamente por letras ou '_' (sublinhado).
a) Arquivos de pginas php Para os arquivos PHP
ser usado um nome em UpperCamelCase e uma
extenso .php;
Exemplo:
MinhaPagina.php

b) Arquivos de classes Ser colocada uma classe


por arquivo e sua nomeao se far com o nome em
UpperCamelCase acrecido de uma extenso
.class.php;
Exemplo:
MinhaClasse.class.php

c) Classes Estas so nomeadas com UpperCamelCase;


Exemplo:
Class MinhaClasse
{
Codigo da classe;
}

d) Atributos A nomeao dos atributos feita com


lowerCamelCase precedido do caractere cifro '$';
Exemplo:
private $atributoUm;
private $atributoDois;
private $atributoTres;

10

e) Mtodos Aqui tambm se usa o lowerCamelCase;


Exemplo:
function meuMetodo()
{
Codigo do mtodo;
}

f) Objetos Assim como nos atributos usa se lowerCamelCase precedido do caractere cifro '$';
Exemplo:
$meuObjeto = new MinhaClasse();

g) Variveis Segue o mesmo caminho dos atributos e


objetos usando o lowerCamelCase precedido do caractere cifro '$';
Exemplo:
$minhaVariavel = 0;

h) Constantes Aqui usado o UPPER_CASE;


Exemplo:
define ( NOME_DA_CONSTANTE, valor da constante );

11

8 Concluso
Nunca demasiado lembrar que s se deve repetir o padro, nunca um trecho de cdigo, todas as vezes que este ltimo acontece
sinal forte de algum erro em etapas anteriores codificao ou tcnica
de programao.
As escolhas feitas pelo autor, dentre as possibilidades oferecidas pelo paro PHP e que constituem este documento, so as que trazem o seu cdigo fonte para a linha esttica que o mesmo considera mais
agradvel e compreensvel.
Este trabalho para uso pessoal do autor e sua publicao
cumpre unicamente a funo de compartilhamento de conhecimentos, assim todos aqueles que concordarem com as idias aqui expostas, sintamse inteiramente a vontade para us-las, quanto aos que discordarem considerem um humilde pedido de desculpas.

12

9 Licenciamento
Este trabalho est licenciado nos termos da licena
GNU_FDL sendo permitidos: Cpia, Criao de obras derivadas, redistribuio e uso comercial, desde que seja sob a mesma licena.
Esta licena pode ser encontrada na internet, em sua
forma original, no seguinte endereo: < http://www.gnu.org/copyleft/fdl.html >
ou na sua verso para a lngua portuguesa < http://www.gnu.org/licenses/licenses.pt-br.html >.

Contato: Sincero Zeferino Filho (OhEremita):


e-mail: <oheremita(at)gmail.com >
Facebook: <http://www.facebook.com/zeferinofilho >
Pgina: <http://zeferinno.blogspot.com.br/ >

Referncias
DALL'OGLIO, Pablo. PHP: Programando com Orientao a Objetos. 1
Edio. So Paulo: Editora Novatec, 2007.
Desenvolvedor: < http://thiagobelem.net/ >, acesso em: 28-04-2014.
Informaes de referncia: < http://php.net/ >, acesso em: 28-04-2014.
Informaes de referncia: < http://php.net/manual/pt_BR/index.php >, acesso
em: 28-04-2014.
Informaes de referncia: < http://www.w3schools.com/php/default.asp >, acesso em: 28-04-2014.
Informaes de referncia: < http://www.maujor.com/index.php >, acesso em:
28-04-2014.
OLIVEIRA, Walker de Alencar. Code Standard. Disponvel em:
<http://www.walkeralencar.com/PHPCodeStandards.pdf >, Acesso: 28-04-2014.

S-ar putea să vă placă și