Правильно назвать вещи сложно. Очень тяжело. Если вы посмотрите на это с другой стороны, вы также можете принять это к значению, что правильно названные вещи важны. (В противном случае, почему бы вы потратили усилия, назвав его?)
Но иногда имена вещей просто не важны. Вот почему у нас есть такие вещи, как, например, анонимные функции («лямбды»): потому что иногда это просто не стоит называть вещи.
Существует множество примеров, когда подходят имена из одной буквы (или очень короткие):
i, j,k , lДля индексов цикла
k и v для ключа и значения в карте
n за номер (например, в Math.abs(n) )
a, b,c Для объектов произвольной (например , в max(a, b))
e для элемента в общем for each цикле
f для функции в функции высшего порядка
p для функции предиката в фильтре
T, T1, T2, ... для переменных типа
E для переменных типа, представляющих тип элемента коллекции
R для переменной типа, представляющей тип результата функции
exза исключением в catchпункте
op для операции на карте или в сложенном виде
- добавление буквы
sдля указания множественного числа, то есть набора (например, nsдля набора чисел xsи ysдля двух произвольных наборов общих объектов)
Я никогда не видел, чтобы они использовались на других языках программирования!
Они очень распространены почти во всех языках, которые я знаю (и, вероятно, также в тех, которые я не знаю). Haskell, F #, ML, Ruby, Python, Perl, PHP, C #, Java, Scala, Groovy, Boo, Nemerle, D, Go, C ++, C, вы называете это.