Was ist ein Debugger?

Abgeschlossen

Im Lauf Ihrer Tätigkeit als Entwickler*in gibt es immer diesen einen Moment, in dem Sie sich fragen: „Warum funktioniert mein Code nicht?“.

Warum funktioniert mein Code nicht?

Während Ihrer Arbeit an der Einzelhandelsanwendung von Tailwind Traders werden Sie wahrscheinlich öfter mit diesem Problem konfrontiert. Wenn in dem Programm ein Fehler auftritt, hat jede*r Entwickler*in in der Regel eine eigene Methode, mit diesem Problem umzugehen.

Sie selbst haben wahrscheinlich schon mehr als einen dieser Debuggingansätze ausprobiert:

  • Sie führen das Programm noch einmal aus, da es im Grunde genommen funktionieren sollte.
  • Erklären Sie Ihrem Kollegen bzw. Ihrer Kollegin das Problem.
  • Sie lesen den Code noch einmal.
  • Sie machen einen Spaziergang.
  • Sie fügen console.log('here') mehrmals in Ihren Code ein.

Obwohl Sie mit diesen Methoden möglicherweise unterschiedlich viel Erfolg haben, gibt es einen anderen Ansatz, der allgemein als vielversprechend angesehen wird: die Verwendung eines Debuggers. Aber was genau ist ein Debugger?

Ein Debugger ist ein Softwaretool, das verwendet wird, um den Ausführungsflow Ihres Programms mit einem analytischen Ansatz zu beobachten und zu steuern. Das Ziel des Entwurfs ist es, die Grundursache eines Fehlers zu finden und Sie bei der Behebung des Problems zu unterstützen. Damit der Debugger funktioniert, können Sie Ihr Programm entweder in seinem eigenen Ausführungsprozess hosten oder als separaten Prozess ausführen, der wie im Fall von Node.js an Ihr ausgeführtes Programm angefügt wird.

Debugger gibt es in verschiedenen Varianten. Einige werden direkt über die Befehlszeile ausgeführt, während andere über eine grafische Benutzeroberfläche verfügen. In diesem Modul verwenden Sie sowohl den in Node.js integrierten Befehlszeilendebugger als auch den integrierten grafischen Debugger von Visual Studio Code.

Gründe für die Verwendung eines Debuggers?

Wenn Sie Ihren Code nicht über einen Debugger ausführen, haben Sie wahrscheinlich eine Vermutung, was in Ihrem Programm passiert. Der Hauptvorteil der Verwendung eines Debuggers besteht darin, dass Sie die Ausführung Ihres Programms überwachen können. Sie können die Programmausführung Codezeile für Codezeile nachverfolgen. Auf diese Weise können Sie verhindern, dass Sie mit Ihrer Vermutung falsch liegen.

Jeder Debugger verfügt über eigene Features. Zu den zwei wichtigsten Funktionen, die fast alle Debugger aufweisen, gehören:

  • Steuern der Programmausführung: Sie können das Programm anhalten und in Einzelschritten ausführen. So können Sie sehen, welcher Code ausgeführt wird und wie sich dieser auf den Zustand Ihres Programms auswirkt.
  • Überwachen des Programmstatus: Sie können beispielsweise zu einem beliebigen Zeitpunkt bei der Codeausführung die Wert- und Funktionsparameter der Variablen überprüfen.

Die richtige Anwendung eines Debuggers macht Sie bei der Suche nach Fehlern in Ihrem Code effizienter und hilft Ihnen, schnell zu verstehen, wie ein Programm funktioniert.

Darum geht es im nächsten Abschnitt.