Часто, когда синтаксис языка требует, чтобы я назвал переменную, которая никогда не используется, я назову ее _
.
На мой взгляд, это уменьшает беспорядок и позволяет мне сосредоточиться на значимых переменных в коде. Я нахожу это ненавязчивым, так что он производит эффект «с глаз долой, с ума».
Типичным примером того, где я делаю это, является именование подзапросов в 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
Другой пример - переменная цикла, которая не используется.
array = [[] for _ in range(n)] # Defines a list of n empty lists in Python
Я использую эту технику очень экономно, только когда чувствую, что описательное имя ничего не добавляет к коду и в некотором смысле убирает его, добавляя больше имен для запоминания. В некотором смысле я считаю его похожим на var
ключевое слово в C #, которое я также редко использую.
Мои коллеги не согласны. Говорят, что даже иметь одно (буквенное) имя персонажа лучше, чем _
.
Я ошибся? Это плохая практика?
[table].[column]
идентификаторов, это помогает читабельности просто использовать [T].[column]
. Это зависит от сценария, конечно. Немного подобный выбор отлично подходит, но если бы скрипт был очень большим, я мог бы использовать более описательные имена.