drhawo schrieb:
Die kurzen Bezeichner sind sicher nicht üblich, ich verwende sie jedoch gerne beim Testen und in kurzen Funktionen mit ausreichender Übersicht, dokumentiere dann aber auch ausführlich, sodass ich auch später noch weiß was sie bedeuten. Die Anweisungzeilen bleiben deutlich kürzer, Schreibfehler kommen seltener vor. Das gilt natürlich nur für lokale Variabel in kurzen Code-Abschnitten.
Deine Einstellung solltest Du noch einmal überdenken. Wenn Du nämlich die Bedeutung eines Namens erst noch *dokumentieren* musst, so merkst Du ja selber, dass die Aussagekraft ziemlich gering ist. Du baust damit ein künstliches Mapping in Deinen Code ein, das zusätzliche Komplexität erschafft. Stell Dir Mal das Spiel UNO gegen MauMau vor - was lässt sich wohl intuitiver spielen? Genau, das Spiel, welches für eine Aktion eine ausdrucksstarke Iconografie besitzt... Onkel Bob hat für Deine Haltung sogar einen Namen, den habe ich leider im Moment nicht zur Hand.
Das Platzargument erübrigt sich damit ebenfalls; denn zusätzliche Kommentare machen den Code auch nicht kürzer.
Die Länge eines Namens ist heutzutage auch kein Problem mehr; Speicherplatz für Quellcode ist zur Genüge vorhanden und dank guter Editoren oder IDEs gibt es auch Autocompletion usw.
Ein Name sollte auch stets kurz gewählt sein; allerdings niemals kürzer als notwendig! Wenn ich die Bedeutung in zwei Varianten gleich gut ausdrücken kann, so wähle ich natürlich die kürzere.
In einem Punkt hast Du ggf. recht: es gibt teilweise gebräuchliche Konventionen; so ist eben das i
in Schleifen für einen ganzzahligen Index ok. Dazu kommen Fachtermini der jeweiligen Domäne. Wenn ich Code für eine PQ-Formel schreibe, so kann ich natürlich p
und q
benutzen; selbiges gilt für viele naturwissenschaftliche Bereiche.
@diesch Natürlich ist es Abwägungssache, wie genau man es damit nimmt. Ich habe jedoch die Erfahrung gemacht, dass das Suchen von ausdrucksstarken Namen auch Trainingssache ist. Und wenn ich das nicht Tag täglich *auch* im Kleinen übe, so werde ich micht darin nicht verbessern und auch nicht mein Niveau halten.
Wenn ich darin nämlich gut bin, so flutscht mit ein passender Name für obigen Code einfach so heraus - und dann empfinde ich als Coder das auch nicht mehr als umständlich oder gar unnötig für so kleinen Code. Ich tue das dann intuitiv.
Und sind wir mal ehrlich: Wieso hat der OP oben das s
gewählt? Imho steht es für einen beliebigen String. Da ihm kein besserer Name eingefallen ist, hat er sich überlegt, welcher Datentyp von input
zurück kommt und darauf basierend den Namen gewählt. Oder sollte ich hier falsch liegen? Eine bessere Erklärung fällt mir nicht ein - das Ergebnis ist so oder so schlecht, *mit* meiner Erklärung allenfalls noch einen Tucken schlechter, da man so eine nicht wünschenswerte Perversion der ungarischen Notation mit in seinen Code eingebaut hat 😉 Denn Typen sollten *nie* *nie* *niemals* *nie* in einem Namen codiert sein!