Kleines Nachschlagewerk Informatik
Fehlervermeidung
Worum geht es?
Fehler kann man vermeiden. Es sollen hierzu einige Tipps gegeben werden.
Struktur
Quelltexte brauchen Struktur. Blöcke innerhalb geschweifter Klammern werden eingerückt, die Klammern selbst am besten untereinander geschrieben. Fehlende Klammern sieht man so sehr schnell.

      while (...)
      {
          ...
          while (...)
          {
              if (...)
              {
                  ...
              }
              else
              {
                  ...
              }
              ...
          }
          ...
      }
            
Sinnvolle Namen
Variablen brauchen sinnvolle Namen. Dadurch wird der Quelltext besser lesbar und man verhindert leichter Dopplungen und Verwechslungen.
Design-By-Contract
Eine Möglichkeit "Sollbruchstellen" einzufügen, ist die Absicherung mit Assertions (assert). Diese testen eine Bedingung und lassen das Programm abstürzen, wenn die Bedingung nicht erfüllt ist. Man kann die Assertions am Anfang, am Ende (und manchmal in der Mitte) einer Routine einfügen. Sie sollen sicherstellen, dass die Parameter korrekt übergeben wurden und die Rückbagewerte im vereinbarten Rahmen liegen.

Beispielweise kann man, wenn eine Zeichenkette übergeben wird, testen, ob diese auch wirklich existiert. Sind negative Werte für einen Parameter sinnlos, kann man auch dies abfangen.

      void BerechneIrgendwas(String text, int anzahlSchritte)
      {
          assert (text != null);
          assert(anzahlSchritte >= 0);
          ...
          Hier folgt dann der eigentliche Code
          ...
      }
            
schrittweises Erarbeiten
Programme sollten schrittweise erstellt und getestet werden. Es empfiehlt sich nicht, 200 Zeilen einzugeben und erst danach den ersten Test vorzunehmen.
Automatische Tests
Eine gehobene Form der Qualitätssicherung sind automatische Tests (UnitTests), wie sie z.B. in BlueJ angeboten werden. Hier lässt man Aktionen aufzeichnen und gibt die gewünschten Ergebnisse ein. Später kann man diesen Test automatisch ablaufen lassen und prüfen, ob das programm nach den aktuellen Änderungen immer noch funktioniert.

Erfahrene Programmierer erstellen zuerst aus den Anforderungen einen Test und arbeiten so lange, bis der Test durchläuft.