Spesso quando la sintassi della lingua mi impone di nominare una variabile che non viene mai utilizzata, la chiamerò _
.
Nella mia mente, questo riduce il disordine e mi permette di concentrarmi sulle variabili significative nel codice. Trovo che sia discreto in modo che produca un effetto "lontano dagli occhi, lontano dal cuore".
Un esempio comune di dove lo faccio è la denominazione di sottoquery in SQL.
SELECT *
FROM
(
SELECT *
FROM TableA
JOIN TableB
ON TableA.ColumnB = TableB.ColumnB
WHERE [ColumnA] > 10
) _ --This name is required, but never used here
ORDER BY ColumnC
Un altro esempio è una variabile di ciclo che non viene utilizzata.
array = [[] for _ in range(n)] # Defines a list of n empty lists in Python
Uso questa tecnica con parsimonia, solo quando sento che un nome descrittivo non aggiunge nulla al codice e in un certo senso lo toglie aggiungendo altri nomi da ricordare. In un certo senso lo considero simile alla var
parola chiave in C #, che uso anche con parsimonia.
I miei colleghi non sono d'accordo. Dicono che anche avere un solo carattere (alfabetico) sia meglio di _
.
Ho sbagliato? È una cattiva pratica farlo?
[table].[column]
identificatori, aiuta molto la leggibilità da usare [T].[column]
. Dipende ovviamente dalla sceneggiatura. Un po 'di selezione del genere va benissimo, ma se uno script fosse molto grande, potrei usare nomi più descrittivi.