Dinge richtig zu benennen ist schwierig. Sehr schwer. Wenn Sie es anders sehen, können Sie dies auch so verstehen, dass richtig benannte Dinge wichtig sind. (Andernfalls, warum hätten Sie sich die Mühe gemacht, es zu benennen?)
Aber manchmal sind die Namen der Dinge einfach nicht wichtig. Deshalb haben wir zum Beispiel anonyme Funktionen ("Lambdas"), weil es manchmal einfach nicht wert ist, Dinge zu benennen.
Es gibt viele Beispiele, in denen einzelne Buchstaben (oder sehr kurze) Variablennamen angemessen sind:
i
, j
, k
, l
Für die Schleifenindizes
k
und v
für den Schlüssel und Wert in einer Karte
n
für eine Nummer (zB in Math.abs(n)
)
a
, b
, c
(Für beliebige Objekte zB inmax(a, b)
)
e
für das Element in einem generischen for each
Schleife
f
für die Funktion in einer übergeordneten Funktion
p
für die Prädikatfunktion in einem Filter
T
, T1
,T2
, ... für Typ - Variablen
E
für Typvariablen, die den Elementtyp einer Sammlung darstellen
R
für eine Typvariable, die den Ergebnistyp einer Funktion darstellt
ex
für die Ausnahme in einer catch
Klausel
op
für die Operation in einer Karte oder Falte
- Anhängen des Buchstabens
s
zur Angabe des Plural, dh einer Sammlung (z. B. ns
für eine Sammlung von Zahlen xs
und ys
für zwei beliebige Sammlungen von Sammelobjekten)
Ich sehe sie nie in anderen Programmiersprachen!
Sie kommen in so ziemlich jeder Sprache vor, die ich kenne (und wahrscheinlich auch in denen, die ich nicht kenne). Haskell, F #, ML, Ruby, Python, Perl, PHP, C #, Java, Scala, D, Go, C ++, C, Sie nennen es.