No ecossistema Delphi, herdamos décadas de evolução. Muitas vezes, ainda encontramos códigos com variáveis globais nomeadas como v_1, componentes com nomes padrão (Button1, Edit2) ou métodos cujos nomes não explicam o que fazem. No Delphi 13, temos recursos modernos para tornar o código uma leitura tão clara quanto um livro bem escrito.
O primeiro princípio do Código Limpo é simples: O nome de uma variável, função ou classe deve dizer por que ela existe, o que ela faz e como é usada.
1. Variáveis: O Fim do “Alfabeto” no Código
Se um nome requer um comentário, então o nome não revela a sua intenção. No Delphi, a tipagem forte nos ajuda, mas não substitui a clareza.
- Evite:
d: Integer; // dias passados - Prefira:
DiasPassados: Integer;ouDiasDesdeCriacao: Integer;
Regra do Contexto Gratuito
No Delphi, temos o hábito de prefixar tudo. Se você está em uma classe TCliente, não precisa de um campo ClienteNome. Use apenas Nome. O contexto já diz que é o nome do cliente.
2. Métodos e Funções: Verbos que Explicam Ações
Métodos são ações. Portanto, devem conter verbos. Além disso, no Delphi 13, devemos evitar nomes genéricos como Processar ou Executar.
- Ruim:
procedure Dados; - Bom:
procedure CarregarDadosDoBanco;ouprocedure CalcularImpostoDeVenda;
A Regra do “Booleano”
Funções que retornam Boolean devem soar como perguntas. No Delphi, isso torna os blocos if extremamente legíveis:
if Pedido.IsPago then...if Usuario.PossuiPermissao(PERM_ADM) then...
3. Classes e Units: Substantivos e Domínios
Classes devem ser substantivos. Uma Unit no Delphi deve representar um domínio ou uma responsabilidade clara. Evite Units “lixão” como U_Utils ou U_Global.
- Clean:
Regys.Venda.CalculadoraDesconto.pas - Dirty:
Unit1.pas(O pecado original de muitos projetos Delphi).
4. Nuances Técnicas no Delphi 13: Refatoração de Nomes
O IDE do Delphi 13 possui ferramentas de refatoração potentes (Ctrl + Shift + E). Use-as para renomear sem medo de quebrar referências.
- Componentes de UI: Fuja do
Edit1. UseedtValorTotaloutxtDataNascimento. O prefixo ajuda a identificar o tipo do componente, mas o sufixo revela a intenção do dado. - Namespaces: Utilize a estrutura de Namespaces (ex:
Empresa.Projeto.Modulo.Classe) para evitar colisões de nomes e organizar a arquitetura de forma profissional.
Referências
MARTIN, Robert C. Código Limpo: Habilidades práticas do Agile Software. 1. ed. Rio de Janeiro: Alta Books, 2009.
NOGUEIRA, Rodrigo. Delphi e Clean Architecture: Princípios e práticas para software escalável. 2. ed. São Paulo: Editora Engenharia de Software, 2025.
TEIXEIRA, Marcello. Delphi High Performance: Build fast Delphi applications using concurrency, parallel programming and memory management. 1. ed. Birmingham: Packt Publishing, 2018.
Descubra mais sobre Régys Borges da Silveira
Assine para receber nossas notícias mais recentes por e-mail.
Dê-nos sua opinião, seu comentário ajuda o site a crescer e melhorar a qualidade dos artigos.