Qual é o nome idiomático de uma variável descartável? [fechadas]

11

A diretiva de configuração da Velocity Template Language requer uma variável no lado esquerdo. Isso não funciona.

#set ( $entries.add("d") )

Mesmo que eu não tenha utilidade para o valor de retorno de add("d"), tenho que atribuí-lo a uma variável.

#set ( $x = $entries.add("d") ) 

Quero comunicar que a variável é necessária, mas não pretendo usá-la mais tarde. Existe uma convenção para nomear variáveis ​​que existem apenas para apaziguar o compilador?

Patrick McElhaney
fonte
2
como sobre apenas usando um comentário
Gratzy
foo? [15 caracteres]
Konrad Morawski
6
Eu chamaria isso de cheiro de código.
Joel Etherton
Olá Patrick, as questões de nomenclatura variável estão fora do tópico aqui: para obter mais informações, consulte As perguntas sobre o nome de “coisa que está” estão no tópico?
1
@ Mark Ok, obrigado. FWIW, acho que essa pergunta se inclina mais para o "termo adequado para um conceito" do que para "nomear sugestões para uma classe ou método". Estou procurando um nome idiomático que seria usado em vários idiomas e bases de código, não um nome específico para uma única variável.
Patrick McElhaney 01/12/19

Respostas:

26

I tendem a usar dummypara este tipo de situação (uma variável que deve ter embora eu não precisar usar).

Oded
fonte
Eu sempre uso ignorado. Eu teria acrescentado minha própria resposta, mas não consegui pensar em mais nada a dizer sobre isso.
John John Buchanan
2
Além de manequim, eu também uso _ (algumas línguas aceitam), despejo, lixo, buraco (do buraco negro), inútil e outros nomes que não me lembro no momento.
PEdroArthur #
+1 porque, depois de muita pesquisa, descobri que, por padrão, o pylint ignora uma variável não utilizada chamada "_" ou "fictícia". logilab.org/card/pylintfeatures#id9
Patrick McElhaney 1/11/11
E enquanto procurava por outra coisa, encontrou uma menção a $ dummy especificamente no Velocity .
Patrick McElhaney
16

Você deve verificar e ver se sua linguagem tem um nome específico para esse uso - o Python tem _que você deve usar para variáveis ​​que pretende jogar fora.

Izkata
fonte
10
Note-se que _é o nome tradicional para este tipo de variável em idiomas que fornecem correspondência de padrão (ML, Haskell, scala, etc.)
Barjak
@barjak É bom saber - Eu nunca usei qualquer uma dessas línguas, eu pensei que era uma coisa Python
Izkata
12

manequim , temp , lixo , buraco negro , lixo ... qualquer um desses me diz que não vou usá-los para nada.

Se eu usar if for some, sempre renomeio a variável.

Torre
fonte
1
+1 para renomeá-lo se você o usar posteriormente.
Spencer Rathbun
Obrigado, mas isso não responde à pergunta. Posso pensar em muitos nomes que dizem "isso não é importante". Estou procurando um nome único e padrão.
Patrick McElhaney / 01/11
Exceto por alguns idiomas mais recentes, a maioria deles não possui esse idioma. Esse padrão não existe, se você não considerar os que obtiveram mais votos aqui como "padrão".
Rook
3

Você já tem muitas respostas boas, no entanto, pensei em lançar uma que seja mais diretamente relacionada à velocidade.

Qual é o método add retornando? Se for nulo, você pode simplesmente dizer à velocidade para fazer uma referência silenciosa:

$!entries.add("d")

No entanto, se você estiver substituindo um valor, e ele retornar o valor antigo (como Map.put faz), será necessário configurá-lo para uma variável dummy de algum tipo, se for um método nulo, não será necessário o variável em tudo.

Se você é inflexível quanto a não usar uma nova variável, pode fazer o seguinte:

#if($entries.add("d")) #end

Se você o estiver usando com frequência suficiente, eu criaria uma macro para ela e use-a em todos os seus modelos. Não vejo o quão útil isso possa ser, mas pelo menos você só precisa comentar uma vez ...

Scott
fonte
Brilhante! O método retorna trueneste caso ($ inputs é um ArrayList), mas, cara, eu gostaria que isso funcionasse.
Patrick McElhaney 01/12/19
Eu tinha medo que você estivesse de fato fazendo referência a uma lista. Eu editei a resposta para denotar uma maneira que você poderia ir sobre não usar uma variável dummy, mas eu não tenho tanta certeza se eu usá-lo ...
Scott
2

Eu daria um nome razoável a ele e acrescentaria um comentário explicando que você o está atribuindo apenas para apaziguar o compilador. Eu vi casos em que alguém usou um nome de variável como unusede outro desenvolvedor posteriormente usou essa variável com esse nome e fez uma bagunça feia no código.

smp7d
fonte
Também gosto de não utilizado . O único problema que tenho com isso é o fato de que eu estou usando no momento em que estou escrevendo: /
Rook