Pautas (Maio)
Padrão de Código (Delphi) e Refatorações
Quebra de linha em operação aritmética
// Opção A
begin
Objeto.Atributo :=
LQuery.FieldByName('Campo').AsFloat +
LVariavelDouble +
LOutraVariavelDouble;
end;
// Opção B
begin
Objeto.Atributo :=
LQuery.FieldByName('Campo').AsFloat +
LVariavelDouble +
LOutraVariavelDouble;
end;
// Opção C
begin
Objeto.Atributo :=
LQuery.FieldByName('Campo').AsFloat +
LVariavelDouble +
LOutraVariavelDouble;
end;
Definir padrão para:
Operações com apenas um tipo de operador
Operações com vários tipos de operadores
Utilização de constantes
// Declaração "padrão"
// Opção A
// Unit separada por tópico (Entidade.Constantes.pas)
// Opção B
// Mesma unit, escopo global
// Opção C
// Declaração inicial no mínimo escopo viável, "evoluindo" conforme sua expansão
//**********************************************//
// Método de refatoração
// Opção A
// Pontual (Apenas onde será alterado)
// Opção B
// Por método (Em todas as ocorrências no método alterado)
// Opção C
// Por unit (Em todas as ocorrências na unit alterada)
Padrão SQL
Indentação INSERT INTO
// Opção A
INSERT INTO Tabela
(CampoA, CampoB, CampoC, CampoD,
CampoE, CampoF)
VALUES (:PA, :PB, :PC, :PD, :PE, :PF)
// Opção B
INSERT
INTO Tabela
(CampoA, CampoB, CampoC, CampoD,
CampoE, CampoF)
VALUES (:PA, :PB, :PC, :PD, :PE, :PF)
Indentação DISTINCT
/* Encontrar "média" comum */
/*
Tabela: Carros
Campos: (PK)Placa, Modelo, Ano
Condição de busca: Um modelo por ano no intervalo de 2000-2021
*/
Formalização de indentação com múltiplos operadores lógicos
SELECT *
FROM Tabela
WHERE CampoA = :ParametroA
AND ( CampoB = :ParametroB
OR CampoC = :ParametroC)
No Comments