Você está na página 1de 12

Artigo

Invista em você! Saiba como a DevMedia pode ajudar sua


carreira.

Padrões de Codificação
Neste artigo será mostrado parte do padrão de códificação usado no Delphi.

Anotar Marcar como concluído

Artigos

Delphi

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
Utilizamos cookies
de Unit para fornecer
e métodos, uma
vindo nomelhor experiência
seu inicio. Dentropara nossos
dos usuários, consulte
comentários nossanão devemos
com chaves Aceitar
política de privacidade. 7
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:

1 procedure CalcularSalario(ID_Funcionario: integer); // Correto


2 procedure CalcularSalario (ID_Funcionario: integer); // Incorreto

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

1 procedure CalcularSalario(ID_Funcionario: integer); // Correto


2 procedure CalcularSalario( ID_Funcionario: integer); // Incorreto
3 procedure CalcularSalario(ID_Funcionario: integer ); // Incorreto
4 procedure CalcularSalario( ID_Funcionario: integer ); // Incorreto

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

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa
Aceitar
política de privacidade. 7
1 Valor := Matriz[1] // Correto
2 Valor := Matriz[ 1] // Incorreto
3 Valor := Matriz[1 ] // Incorreto
4 Valor := Matriz[ 1 ] // Incorreto

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

1 Valor := -1 // Correto
2 Valor := - 1 // Incorreto

Antes ou depois de um operador ponto( . ):

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


2 Button1. Caption := ‘Incorreto’; // Incorreto
3 Button1 .Caption := ‘Incorreto’; // Incorreto
4 Button1 . Caption := ‘Incorreto’; // Incorreto

Antes de uma virgula:

1 Variav1, Variav2: Integer; // Correto


2 Variav1 , Variav2: Integer; // Incorreto

Antes de dois pontos:

1 Variav1, Variav2: Integer; // Correto


2 Variav1, Variav2 : Integer; // Incorreto

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa
Aceitar
políticaAntes
de privacidade.
de ponto e virgula: 7
1 Variav1, Variav2: Integer; // Correto
2 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.

1 if Teste then
2 Valor := 10;
3
4 if not Teste then
5 begin
6 Valor1 := 10;
7 Valor2 := 20;
8 end;
9
10 for I := 0 to ValorFinal do
11 begin
12 Valor[I] := ValorFinal * I;
13 end;
14
15 while Tabela.Eof do
16 begin
17 ShowMessage(Tabela.FieldByName(‘Nome’).AsString);
18 Tabela.Next;
19 end;
20
21 repeat
22 Inc(Valor);
23 until Valor > 10;
24
25 try
26 try
27 Tabela.Open;
28 Form1.ShowModal;
29 finally
30 Tabela.Close;
31 end;
32 except
33 ShowMessage(‘Localizado um erro’);
34 end;
35
Utilizamos36cookies paraTabela
with fornecerdo
uma melhor experiência para nossos usuários, consulte nossa
Aceitar
política de37
privacidade.
begin 7

38
39 Append;
40 FieldByName(‘Nome’).AsString := ‘Tadeu Pereira’;
41 Post;
end;

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 .

1 case Controle of
2 0..9: Valor := Controle * 3;
3 10: Valor := Controle * 2;
4 else Valor := Controle;
5 end;
6
7 case Objeto.Color of
8 clBlack:
9 begin
10 ShowMessage(‘A cor é preta’);
11 end;
12 clWhite:
13 begin
14 ShowMessage(‘A cor é branca’);
15 end;
16 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.

Convenções de nomenclatura
Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa
Aceitar
política de privacidade. 7
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.

1 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.

1 TNovaClasse – TPessoa – TDiario

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

1 FNome – FCidade – FLimiteCompra

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

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


Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa
Aceitar
política de privacidade. 7
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.

1 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.

1 TAlignment = (taLeftJustify, taRightJustify, taCenter);

Este artigo foi cedido por Cassic

Tecnologias:

Delphi

Anotar Marcar como concluído

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa
Aceitar
política de privacidade. 7
Confira outros conteúdos:

Instalando o ACBr Mapeamento Objeto-


Relacional com TMS...

Em caso de dúvidas chame no whatsapp

MELHOR OPÇÃO

Plano Recorrente
R$ 89,90 PRIMEIROS
3 MESES

R$ 49,90 A PARTIR
DO 4° MÊS

12 MESES = R$ 718,80

Formação FullStack completa

+10mil exercícios gamificados

+50 projetos reais

Suporte online

Pra quem tem pouco limite no


cartão

Fidelidade de 12 meses
Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa
Aceitar
política de privacidade. 7
Matricule-se

Plano Anual

12x R$ 59,90
12 MESES = R$ 718,80

Formação FullStack completa

+10mil exercícios gamificados

+50 projetos reais

Suporte online

Matricule-se

Perguntas Frequentes
Por que a programação se tornou a profissão mais promissora da atualidade?

Como faço para começar a estudar?

Em quanto tempo de estudo vou me tornar um programador?

Sim, você pode se tornar um programador e não precisa ter diploma de curso
superior!

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa
Aceitar
política de privacidade. 7
Qual o investimento financeiro que preciso fazer para me tornar um
programador?

Como funciona a forma de pagamento da DevMedia?

O que eu irei aprender estudando pela DevMedia?

Quais são os diferencias de ensino da DevMedia?

Nossos casos de sucesso

Leonardo Carlos

Eu sabia pouquíssimas coisas de programação antes de começar a estudar com vocês, fui
me especializando em várias áreas e ferramentas que tinham na plataforma, e com essa
bagagem consegui um estágio logo no início do meu primeiro período na faculdade.

Lucas Rodrigues

Estudo aqui na Dev desde o meio do ano passado! Nesse período a Dev me ajudou a
crescer muito aqui no trampo.
Fui o primeiro desenvolvedor contratado pela minha empresa. Hoje eu lidero um time
de desenvolvimento!
Minha meta é continuar estudando e praticando para ser um Full-Stack Dev!

Heráclito Júnior

Economizei 3 meses para assinar a plataforma e sendo sincero valeu muito a pena, pois a
plataforma é bem intuitiva e muuuuito didática a metodologia de ensino. Sinto que
estou EVOLUINDO a cada dia. Muito obrigado!

Julio Cablen
Utilizamos
Nossa!cookies para fornecer
Plataforma uma melhor
maravilhosa. experiência
To amando para nossos
o curso usuários, consultefront-end,
de desenvolvimento nossa tinha
Aceitar
política de privacidade.
coisas que eu ainda não tinha visto. A didática é do jeito que qualquer7pessoa consegue
aprender. Sério, to apaixonado, adorando demais.

Joelberth Sena

Adquiri o curso de vocês e logo percebi que são os melhores do Brasil. É um passo a passo
incrível. Só não aprende quem não quer. Foi o melhor investimento da minha vida!

Felipe Nunes

Foi um dos melhores investimentos que já fiz na vida e tenho aprendido bastante com a
plataforma. Vocês estão fazendo parte da minha jornada nesse mundo da programação,
irei assinar meu contrato como programador graças a plataforma.

Wanderson Oliveira

Comprei a assinatura tem uma semana, aprendi mais do que 4 meses estudando
outros cursos. Exercícios práticos que não tem como não aprender, estão de parabéns!

José Lucas

Obrigado DevMedia, nunca presenciei uma plataforma de ensino tão presente na vida
acadêmica de seus alunos, parabéns!

Eduardo Dorneles

Aprendi React na plataforma da DevMedia há cerca de 1 ano e meio... Hoje estou há 1 ano
empregado trabalhando 100% com React!

Adauto Junior

Já fiz alguns cursos na área e nenhum é tão bom quanto o de vocês. Estou aprendendo
muito, muito obrigado por existirem. Estão de parabéns... Espero um dia conseguir um
emprego na área.

Ver todos os casos de sucesso


Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa
Aceitar
política de privacidade. 7
Por Tadeu
Em 2010

Artigos

Quem Somos

Fale conosco

Plano para Instituição de ensino

Assinatura para empresas

Assine agora

Hospedagem web por Porta 80 Web Hosting.

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa
Aceitar
política de privacidade. 7

Você também pode gostar