Als ich mein beinahe fertiges Projekt mir mal so im nachgang angeschaut habe ist mir häufig aufgefallen, dass ich trotz Doku mit einigen Dingen nichts mehr anfangen kann,d.h. ich weiss nicht mehr was ich meinte.
- Wie würdet ihr die Variablen benennen, vorallendingen im Hinblick auf unterschiedliche Verwendungszwecke wie zB. Sprachvariablen, Systemvariablen, allgemeine Variablen usw.
Zwei Grundregeln:
-
Allgemeine, kurzlebige Geschichten haben nur sehr kurze Namen, zum Beispiel i und j für numerische Zähler, c für einen Buchstaben.
-
Alle anderen Namen sollten beschreibend sein, aber auch nicht so ellenlang, daß man schon bei der zweiten Benutzung einen Schreibkrampf kriegt.
-
Zusammengehörige Variablen werden in ein einziges Objekt verpackt, d.h. sie spuken nicht als einzelne Variablen durch die Gegend à la kunde_vorname und kunde_nachname, sondern als kunde.vorname und kunde.nachname oder kunde["vorname"] und kunde["nachname"] (struct, record, assoziative Felder, je nachdem, was die Sprache bietet).
Mehr braucht's in Bezug auf Variablen IMHO nicht.
- Deutsch oder Englisch oder gemischt?
Das ist reine Geschmackssache. Mir fällt allerdings öfters auf, daß englische Bezeichnungen einfacher, weil kürzer und besser strukturierbar (wenn sie aus mehreren Komponenten bestehen) sind - oder zumindest zu sein scheinen..
Aber solange man nicht -wie auch es auch hier im Forum ab und an nett zu sehen ist- in Denglisch verfällt, ist das wohl ziemlich wurst ;)
- würdet ihr diese Variablen nochmals irgendwo auflisten um sie zu erläutern
Nein, die drei Regeln oben reichen mir. Ein extra Beschreibungsblock würde den Code vielleicht sogar noch unübersichtlicher machen, weil er gewissermaßen im Weg steht.
mir geht es vorallendingen um Nachvollziehbarkeit. (auch noch 6
Nachvollziehbarkeit beruht meiner Meinung nach nur zu einem sehr kleinen Teil auf Variablennamen; der Großteil eines Programm besteht schließlich nicht aus Variablen, sondern aus Code - und diesen gilt es zu kommentieren.
Sicher ist es äußerst hilfreich, wenn eine Variable einen beschreibenden, einprägsamen Namen hat, aber einerseits hast Du in einem Variablennamen selten soviel Platz, die volle Funktion zu beschreiben, und zum anderen ergibt sich die volle Funktion einer Variablen normalerweise nur in Zusammenhang mit dem Code, der um sie herum steht. Um eine Codekommentierung kommt man also nicht herum, und mit dieser Codekommentierung werden automatisch auch die Variablen beschrieben.
Gruß,
soenk.e