Debug
„Debug“-Funktionen sind Hilfsmittel bei der Programmierung, um Fehler zu finden.
Als Bug (engl. Käfer) wird ganz allgemein ein Fehler im Programm bezeichnet. Diese Fehler entstehen in der Programmlogik, also den Befehlen, die der Programmierer geschrieben hat. Ein Bug bedeutet dabei nicht unbedingt, dass das Programm schlecht geschrieben wurde. Oft entstehen Programmfehler durch sehr ungewöhnliche Situationen, die so besonders sind, dass sie während der Entwicklung übersehen wurden.
Das De-Buggen bezeichnet das Beseitigen dieser Fehler. Dabei besteht eine besondere Schwierigkeit darin, zunächst überhaupt erst mal zu identifizieren, durch welche Umstände das Problem entsteht. Dabei müssen oft einzelne Programmpassagen und Befehlsfolgen Schritt für Schritt durchgegangen und gedanklich nachverfolgt werden. Um besser zu verstehen, was während des Programmablaufs passiert, gibt es sogenannte Debugging-Tools. Dabei handelt es sich um Helferprogramme, die Einblick in den Programmablauf und z.B. momentane Werte einer Variablen zu einem bestimmten Zeitpunkt sichtbar machen.
Viele Programmiersprachen bieten das Ausgeben von Daten in schlichter Textform für den Entwickler. Dieses Beispiel eines einfachen Debug-Werkzeugs kann genutzt werden, um Werte zu überprüfen oder z.B. auch zu verfolgen, ob bzw. wann eine bestimmte Anweisung ausgeführt wird.
In Unity heißt der Ausgabebefehl für die Fehlersuche Debug.Log:
Debug.Log("Diese Zeile wird ausgeführt.");
Wird das Programm, z.B. das Spiel, ausgeführt, erscheint die Meldung „Diese Zeile wird ausgeführt.“ in der Konsole, einem speziellen Info-Fenster für Entwickler. Zwischen anderen Anweisungen platziert kann der Entwickler so feststellen, wann dieser Programmabschnitt (der die Debug.Log-Anweisung enthält) ausgeführt wird.
Debugging-Ausgaben können oft mit einem Schweregrad versehen werden, der angibt wie kritisch die Anmerkung ist. Das Info-Level ist unproblematisch und gibt einfach Daten „zur Info“ aus. Die Stufe Warnung enthält Meldungen, die eine besondere Aufmerksamkeit erfordern. Die Stufe Fehler oder Error markiert kritische Ereignisse, also Situationen, die ein Problem für das Programm darstellen und z.B. den korrekten weiteren Ablauf verhindern. In Unity werden diese drei Stufen auch farblich bei der Ausgabe hervorgehoben:
Siehe auch
- Unity-Anleitung zum Console-Fenster
- Unity-Anleitung zu den Befehlen Debug.Log, Debug.LogWarning, Debug.LogError