Você está na página 1de 8

24/06/2022 20:43 Padrões de Codificação

Por que usar um padrão de codificação? A organização do código fonte facilita os processos de desenvolvimento, retirada de bugs, atividades
de validação e manutenção. O uso de um padrão de codificação também aumenta a produtividade num projeto, uma vez que a comunicação
dentro da equipe de desenvolvimento fica mais fácil, mas vale ressaltar que partes desses padrões são vistas, algumas vezes, como sugestões
por empresas que adotam seus próprios padrões.

Comentários: Usamos as chaves  { }  para iniciar e terminar um comentário com mais de uma linha, esse tipo de comentário é comum
para se informar dados gerais e específicos de Unit e métodos, vindo no seu inicio. Dentro dos comentários com chaves não devemos
usar asteriscos, símbolos ou caracteres especiais. Outro tipo de comentário usado é a barra de data digitada duplamente //  neste caso o
comentário se ressume a uma linha, devendo ser dado um espaço após a segunda barra para começar o texto desejado.
Indentação: Ato de separar os níveis de codificação por espaços em branco. No caso da Linguagem Delphi a indentação deve ter dois
espaços, não se podendo usar tabulação.

Observação1
As palavras reservadas program, unit, interface, uses, type, var,  implementation ,  initialization ,  finalization  e  end . não podem ser indentadas.
Observação2
Se desejar indentar várias linhas simultaneamente, selecione-as e em seguida pressione Ctrl+Shift+I que a IDE faz a indentação
automaticamente. Caso precise remover uma indentação de um código selecionado pressione Ctrl+Shift+U.

Espaços em branco: Os espaços em branco, assim com a linhas, ajudam na legibilidade do código, mas existem as exceções:
Entre o método e o parâmetro de abertura:

procedure CalcularSalario(ID_Funcionario: integer); // Correto

procedure CalcularSalario (ID_Funcionario: integer); // Incorreto

https://www.devmedia.com.br/padroes-de-codificacao/16529 1/8
24/06/2022 20:43 Padrões de Codificação

Após um parêntese de abertura ou antes de um parêntese de fechamento:

procedure CalcularSalario(ID_Funcionario: integer); // Correto

procedure CalcularSalario( ID_Funcionario: integer); // Incorreto

procedure CalcularSalario(ID_Funcionario: integer ); // Incorreto

procedure CalcularSalario( ID_Funcionario: integer ); // Incorreto

Após um colchete de abertura ou antes de um colchete de fechamento:

Valor := Matriz[1] // Correto

Valor := Matriz[ 1] // Incorreto

Valor := Matriz[1 ] // Incorreto

Valor := Matriz[ 1 ] // Incorreto

Entre um operador unário(+ ou -) e o seu operando:

Valor := -1 // Correto

Valor := - 1 // Incorreto

https://www.devmedia.com.br/padroes-de-codificacao/16529 2/8
24/06/2022 20:43 Padrões de Codificação

Antes ou depois de um operador ponto( . ):

Button1.Caption := ‘Correto’; // Correto

Button1. Caption := ‘Incorreto’; // Incorreto

Button1 .Caption := ‘Incorreto’; // Incorreto

Button1 . Caption := ‘Incorreto’; // Incorreto

Antes de uma virgula:

Variav1, Variav2: Integer; // Correto

Variav1 , Variav2: Integer; // Incorreto

Antes de dois pontos:

Variav1, Variav2: Integer; // Correto

Variav1, Variav2 : Integer; // Incorreto

https://www.devmedia.com.br/padroes-de-codificacao/16529 3/8
24/06/2022 20:43 Padrões de Codificação

Antes de ponto e virgula:

Variav1, Variav2: Integer; // Correto

Variav1, Variav2: Integer ; // Incorreto

if ,  for ,  while ,  repeat ,  try ,  with  :


Devem estar em mais de uma linha e indentado entre os níveis. Quando houver  begin  o mesmo deve
estar em uma nova linha e o seu  end  deve estar no mesmo nível.

if Teste then

Valor := 10;

if not Teste then

begin

Valor1 := 10;

Valor2 := 20;

end;

for I := 0 to ValorFinal do

begin

Valor[I] := ValorFinal * I;

end;

while Tabela.Eof do

https://www.devmedia.com.br/padroes-de-codificacao/16529 4/8
24/06/2022 20:43 Padrões de Codificação

begin

ShowMessage(Tabela.FieldByName(‘Nome’).AsString);

Tabela.Next;

end;

repeat

Inc(Valor);

until Valor > 10;

try

try

Tabela.Open;

Form1.ShowModal;

finally

Tabela.Close;

end;

except

ShowMessage(‘Localizado um erro’);

end;

with Tabela do

begin

Append;

FieldByName(‘Nome’).AsString := ‘Tadeu Pereira’;

Post;

end;

https://www.devmedia.com.br/padroes-de-codificacao/16529 5/8
24/06/2022 20:43 Padrões de Codificação

case: As opções ficam num nível abaixo do case, sendo assim elas devem estar indentadas. Caso seja necessário usar o  begin , o mesmo
deve ser indentado em consideração a opção. O bloco de comandos deve estar indentado em consideração ao  begin .

case Controle of

0..9: Valor := Controle * 3;

10: Valor := Controle * 2;

else Valor := Controle;

end;

case Objeto.Color of

clBlack:

begin

ShowMessage(‘A cor é preta’);

end;

clWhite:

begin

ShowMessage(‘A cor é branca’);

end;

end;

Quebras de linha: A linha deve ter no máximo oitenta caracteres, se for ultrapassado esse limite a linha deve ser quebrada. As linhas
seguintes devem ser indentadas e quebradas da mesma maneira.
Organização de Classes:
Quanto aos níveis: Primeiro devem ser feita as declarações em private seguidas pelas feitas em  protected , public e  published .
Quanto a ordenação: Primeiro os campos, seguido pelos métodos e por fim as propriedades.

https://www.devmedia.com.br/padroes-de-codificacao/16529 6/8
24/06/2022 20:43 Padrões de Codificação

Convenções de nomenclatura

As convenções adotas para fazer nomeação na Linguagem Delphi é uma seção a parte, uma vez que o padrão muda de acordo com o que se
deseja atribuir o nome.

Arquivos: O nome do arquivo deve ser iniciado com letra maiúscula e o restante deve ter letras minúsculas, salvo os casos em que esse
nome é composto por mais de uma palavra, nesse caso cada palavra deve iniciar com letra maiúscula acompanhada por letras minúsculas
– chamamos esse uso de maiúsculas e minúsculas de camel caps ou infix caps. A extensão do arquivo deve conter apenas letras
minúsculas.

Cadastro.pas – UntPrincipal.dfm – MeuSistema.dpr

Classes: A classe deve ser iniciada pela letra T maiúscula acompanhada pelo nome seguindo o padrão infix caps.

TNovaClasse – TPessoa – TDiario

Campos: Semelhante a classe, só que nesse caso devemos trocar a letra T pela letra F também maiúscula.

FNome – FCidade – FLimiteCompra

https://www.devmedia.com.br/padroes-de-codificacao/16529 7/8
24/06/2022 20:43 Padrões de Codificação

Métodos: Os métodos devem ter nomes de verbos no imperativo e seguir o padrão de infix caps.

CalcularSalario(); – GravarNome(); – VerificarLimite();

Parâmetros: Também semelhante a classe, e assim como os campos trocamos a letra T, só que nesse caso pela letra A maiúscula. Esse
padrão é uma sugestão que a própria VCL não a segue completamente, sendo usada como opcional.

NomeMétodo(AParam1, AParam2: Integer; AParam3: string);

Variáveis: Deve seguir o padrão Infix caps.


Constantes: Assim como as variáveis, as constantes seguem o padrão Infix caps.
Tipos enumerados: As iniciais fixas dos valores possíveis dos tipos enumerados devem começar com letras minúsculas, o restante deve
seguir o padrão Infix caps.

TAlignment = (taLeftJustify, taRightJustify, taCenter);

https://www.devmedia.com.br/padroes-de-codificacao/16529 8/8

Você também pode gostar