Welche Programmier-Angewohnheiten sollten Software-Entwickler vermeiden?
Ich vertrete die Ansicht, dass ein Programm, genau wie eine gute Geschichte, dem interessierten Leser das gute Gefühl des Verstehens vermitteln muss. Schreibe besonders auch für deinen Nachfolger! Dazu dokumentiert man nur, was zusätzlich das Verständnis fördert und erzeugt keine überflüssigen Längen oder trickreiche Winkelzüge. Was aber besonders wichtig ist, ist die Wortwahl. Funktionen, die etwas anderes tun, als sie heißen sind besonders kritisch. Das gilt auch für nichts-sagende oder falsche Variablennamen. Man beachte, dass die Wortwahl an das Problemvokabular (Domänensprache) angepasst sein sollte und nicht unnötig neue Begriffe erfunden werden sollten oder durch verwirrendes Überladen oder Widerverwenden verwaschen werden sollen. Damit meine ich auch Variablen, die eigentlich nur Teile aus Strukturen zwischenspeichern - gar um das Debugging deren Werte einfacher zu haben. Sowas belastet das Leseverständnis, weil der Leser sie zusätzlich im Kopf behalten muss, um zu verstehen was abgeht. Eine Variable, die nur einmal in der Folge verwendet wird - gar um sie sofort als Funktionsergebnis zurückzugeben - finde ich ähnlich belastend als wilde, verschachtelte Schleifenkonstrukte mit ineinander vermischten Zwecken. Ein Programm ist kein Krimi sondern dient zur deutlichen Erklärung der Problemlösung. Das vergessen sehr viele Programmierer. Ein Chat über die Progrymmhistorie oder ein „ich war das hier“ als Kommentar ist auch nicht zeitgemäß- wozu gibt es Versionskontrollyysteme.