Padronização de nomes
Enviado: 29 Mai 2020 14:20
Eu estou gostando da minha padronização atual.
Arquivos - começam com JP: JPCADASTRO, JPPRODUTO, JPPEDIDO, etc.
Chave - ID + arquivo: IdCadastro, IdProduto, IdPedido
Campos em geral: exceto a chave, usam duas letras no início, pdPedido, ipPedido, ipProduto, pdCadastro
Poderia usar ID nos campos chave em todos os arquivos, mas se fosse procurar o uso nos pedidos, não ia dar certo.
Prefiro assim, porque se procurar PDCADASTRO vou encontrar exatamente aonde mexe com o código de Cadastro, no arquivo de pedidos.
Variáveis:
nIdCadastro, nIdProduto, nIdPedido - não importa a tela - se necessário nIdCadastroAnt/Old ou algo do tipo
Em relatórios, nIdCadastroIni, nIdCadastroFim, nIdCadastroRel - pra intervalo, ou pra quebra no relatório por exemplo
aIdCadastroList, aIdPedidoList - se vai ter uma lista de códigos de idCadastro, idCadastroList deixa bem claro que se trata disso
inicial a=array, c=caractere aList := { 1, 2, 3 } cList := "01,02,03"
O Itamar me lembrou disso outro dia, e como tenho alterado caracteres pra numéricos, isso ajudou muito.
E também porque antes usava mIdCadastro, mpdCadastro, mfiCadastro, o mesmo nome do arquivo com prefixo M, mas padronizei a variável pra um nome só, então as duas coisas juntas facilitaram ainda mais.
Classes:
se a classe é pra clientes, do arquivo JPCADASTRO, nada mais simples do que chamar de CadastroClass
Programas:
Se o programa é o cadastro de clientes, do arquivo jpcadastro, chamei de Pjpcadastro, mas pensando bem, poderia ser PCadastro.prg
Mudar isso depois.... rs
E por aí vai.
Com isso, os fontes estão ficando cada vez mais fáceis de mexer, ou de localizar.
Nas exceções... aí são exceções, é pra decidir quando acontecer.
Lembrando:
O que permite ficar mexendo em nomes de variáveis, é a compilação -w3 -es2.
É que se eu esquecer de alterar qualquer lugar que seja, dá erro na compilação, e já faço o ajuste.
Sem perigo de acontecer erro de run-time em cliente.
E geralmente uso variáveis locais, o que deixa cada módulo com nomes independentes, que podem ser alterados mesmo que não altere os outros módulos/fontes.
Arquivos - começam com JP: JPCADASTRO, JPPRODUTO, JPPEDIDO, etc.
Chave - ID + arquivo: IdCadastro, IdProduto, IdPedido
Campos em geral: exceto a chave, usam duas letras no início, pdPedido, ipPedido, ipProduto, pdCadastro
Poderia usar ID nos campos chave em todos os arquivos, mas se fosse procurar o uso nos pedidos, não ia dar certo.
Prefiro assim, porque se procurar PDCADASTRO vou encontrar exatamente aonde mexe com o código de Cadastro, no arquivo de pedidos.
Variáveis:
nIdCadastro, nIdProduto, nIdPedido - não importa a tela - se necessário nIdCadastroAnt/Old ou algo do tipo
Em relatórios, nIdCadastroIni, nIdCadastroFim, nIdCadastroRel - pra intervalo, ou pra quebra no relatório por exemplo
aIdCadastroList, aIdPedidoList - se vai ter uma lista de códigos de idCadastro, idCadastroList deixa bem claro que se trata disso
inicial a=array, c=caractere aList := { 1, 2, 3 } cList := "01,02,03"
O Itamar me lembrou disso outro dia, e como tenho alterado caracteres pra numéricos, isso ajudou muito.
E também porque antes usava mIdCadastro, mpdCadastro, mfiCadastro, o mesmo nome do arquivo com prefixo M, mas padronizei a variável pra um nome só, então as duas coisas juntas facilitaram ainda mais.
Classes:
se a classe é pra clientes, do arquivo JPCADASTRO, nada mais simples do que chamar de CadastroClass
Programas:
Se o programa é o cadastro de clientes, do arquivo jpcadastro, chamei de Pjpcadastro, mas pensando bem, poderia ser PCadastro.prg
Mudar isso depois.... rs
E por aí vai.
Com isso, os fontes estão ficando cada vez mais fáceis de mexer, ou de localizar.
Nas exceções... aí são exceções, é pra decidir quando acontecer.
Lembrando:
O que permite ficar mexendo em nomes de variáveis, é a compilação -w3 -es2.
É que se eu esquecer de alterar qualquer lugar que seja, dá erro na compilação, e já faço o ajuste.
Sem perigo de acontecer erro de run-time em cliente.
E geralmente uso variáveis locais, o que deixa cada módulo com nomes independentes, que podem ser alterados mesmo que não altere os outros módulos/fontes.