Tutorial
Guter Programmierstil
von Mao | Seite 5 von 6 |
Die "richtigen" Befehle
Zunächsteinmal (ganz wichtig ;): es gibt kein konkretes "richtig" oder "falsch", genauso wenig wie nur "schwarz" oder "weiß".
Trotzdem sollte man beim Programmieren beachten, dass manche Befehle aus verschiedenen Gründen weniger gern gesehen sind und auch, dass man keine bereits vorhandenen Funktionen noch einmal selbst nachprogrammieren sollte, es sei denn, dies dient Übungszwecken oder einer Funktionserweiterung.
Fangen wir beim Punkt der "unbeliebten" Befehle an. Most-Wanted in diesem Bereich ist wohl der Befehl GoTo. GoTo erlaubt es dir (solltest du es noch nicht wissen; was übrigens in diesem Fall viel besser ist! ;), wild Sprünge im Programm zu unternehmen. Dazu gibt es so genannte Labels, welche mit GoTo angesprungen werden können. Labels werden durch den Labelnamen, gefolgt von einem Doppelpunkt definiert:
TestLabel:
Damit hätten wir dann ein Label namens "TestLabel". Angesprungen werden kann dieses dann hiermit:
GoTo TestLabel
"Das ist doch jetzt nix Schlimmes?!". Auf dem ersten Blick vielleicht nicht, langfristig zerstört es jedoch die Übersichtlichkeit eines Codes.
Nehmen wir zum Beispiel den Bubble-Sort-Code, der für dieses Tutorial schon einmal seinen Kopf herhalten musste. Komplett ohne strukturierte Befehle (wie Do-Loop, For-Next, While-Wend, ...):
Sub BubbleSort (Feld() As Integer)
Dim As Integer i, n, vertauscht
n=UBound(Feld)-1
anfang:
vertauscht = 0
i=LBound(Feld)
sortieren:
If Feld(i) > Feld(i+1) Then
Swap Feld(i), Feld(i+1)
vertauscht = 1
End If
i++
If i<n Then GoTo sortieren
n -= 1
If vertauscht=1 Then GoTo anfang
End Sub
Dieser Code sortiert das Array genauso, bloß ist ebendieser Code auch um einiges schlechter zu lesen. Merke: GoTo lässt sich in 99% aller Fälle durch clevere Befehle ersetzen!
(Übrigens ist GoSub GoTo recht ähnlich; auch GoSub wird nicht gern gesehen.)
GOTO
Hinweis: Das Bild unterliegt der Creative Commons Attribution-NonCommercial 2.5 License und stammt von xkcd.
Der andere oben genannte Bereich soll hier wirklich nur kurz angerissen werden, falls nicht ganz klar wurde, was gemeint ist.
Sollte man zum Beispiel mit den Funktionen Left und Right sich ein eigenes Mid zusammenbauen, so kann dies zu Übungszwecken natürlich geschehen. Ebenso, falls man sich noch ein Zusatzfeature einbauen möchte, was für ein bestimmtes Programm gebraucht wird. Sollte es aber genau die gleiche Funktionalität wie Mid besitzen, so bläht das nicht nur den Code auf, sondern lässt ihn auch noch etwas unübersichtlicher werden. Programmierer, die sich deinen Code kurz anschauen möchten, müssen erst nachschauen, was diese Funktion macht. Jedoch kann man davon ausgehen, dass die meisten FB-Programmierer sofort wissen, was der Befehl Mid macht - ein lästiges Nachschauen entfällt also.
Zusätzliche Informationen und Funktionen | |||||||
---|---|---|---|---|---|---|---|
|