TransWikia.com

Qual a alternativa do 'And' no Português para nomes de variáveis e métodos?

Stack Overflow em Português Asked by Dherik on November 5, 2021

Uma dúvida que sempre me amola quando estou em um projeto Java no qual usamos termos em português é lidar com nomes de métodos ou variáveis que representam, de alguma forma, duas coisas e preciso mencionar ambas no nome do método/variável. Em inglês, e na mesma situação, os nomes ficam melhores.

Um exemplo, se estou em um código em inglês e tenho uma variável que contém o nome e sobrenome da pessoa, eu posso ter:

firstAndLastName

Simples e fácil de ler, graças ao And. Mas em português o nosso And é o E, o que fica muito ruim de ler no código na minha opinião, pois as letras maiúsculas acabam grudadas:

primeiroESegundoNome

Não sei quanto a vocês, mas esta parte ES me dá uma travada na leitura de qualquer código.

Normalmente, acabo usando umas destas alternativas:

primeiroSegundoNome
primeiroComSegundoNome

Resolve em alguns casos, fica só estranho em outros, mas em alguns não resolve. Exemplo, se tenho um método que verifica se as datas existem e são iguais, querendo dar ênfase nesta situação, nenhuma das formas abaixo atende bem:

hasDatasIguais
hasDatasComIguais
isDatasExistemIguais
isDatasExistemComIguais

Em termos de nome, ficaria melhor mesmo hasDatasEDatasIguais, hasDatasESaoIguais*…, mas voltamos ao problema inicial.

Este é um problema que incomoda vocês também? Como vocês agem em casos similares?

* Aqui misturei o termo inglês has com português, mas isto é um outro assunto

One Answer

Primeira opção: aceita que dói menos :) Se tiver um padrão quando bater o olho em duas maiúsculas seguidas, ainda mais uma sendo E já ligará rapidamente o que é, depois de algum treino.

Também pode usar algumas variações ruins

isDatasExistemTambemIguais //Fica longo, mas aceitável
isDatasExistemTbIguais  //Menos legível, mas nada crítico
isDatasExistemE_Iguais //Foge do padrão normalmente usado, mas resolve
isDatasExistemAndIguais //Esquisito, mas válido, há precedente
isDatasIguaisSeExistirem  //Questão se interpretação
isDatasExistentesMasIguais //Mais para ter opções

Dá para fazer outras combinações partindo destas.

Mas como o E pode ser implícito em algumas situações é mais fácil reescrever, eu ficaria com

TemDatasIguais

Coloquei no GitHub para referência futura.

Se não existe uma ou mais datas implica que elas não são iguais. Claro se todas não existem até podemos dizer que são iguais, mas de certa forma elas sequer são comparadas.

Se realmente puder existir uma situação que a concatenação precisa ser explícita aí teria que usar alguma outra palavra, ou aceita a esquisitice que fica o casing.

Eu usaria Eh ou É no lugar do is. No começo acho que o casing é menos importante, e o acento ajuda diferenciar. Veja: Existe algum problema em usar caracteres Unicode para identificadores em código?.

Answered by Maniero on November 5, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP