Perl-Programme debuggen

November 10

Kein Computerprogramm funktioniert immer wie beim ersten Versuch beabsichtigt. Programmierer machen Fehler, die aus Tippfehler,, um Fehler gemacht reichen können, weil der Programmierer etwas zur Dokumentation Fehler, Bugs in Perl selbst nicht Verstand. Wenn ein Programm schief läuft, gibt es eine Reihe von Techniken zum Debuggen.

Anweisungen

Perl-Programme zu debuggen, manuell

1 Verwenden Sie print-Anweisungen. Dies ist die primitivste Weise Perlprogramme Debuggen. Wenn Sie wissen, wo das Programm falsch geht, setzen Sie einige print-Anweisungen in Werte ausgegeben. Denken Sie daran, diese print-Anweisungen herauszunehmen, nachdem Sie fertig sind, oder zumindest kommentieren Sie sie aus.

2 Rundgang durch das Programm in Ihrem Kopf und vergleichen, was die Werte sein sollte, was sie tatsächlich sind, wenn das Programm ausgeführt wird.

3 Aktivieren Sie Warnungen über die Befehlszeile mit dem Switch -w auf die Shebang-Zeile (das ist die #! / Usr/bin/Perl Linie oben) mit der -w-Schalter oder die "Nutzung Warnungen;" Richtlinie. Die "Nutzung Warnungen;" Richtlinie wird auf allen Plattformen funktionieren, während einige Plattformen die Shebang-Zeile ignorieren, so dass es also möglicherweise Warnungen vorhanden sind, dass Sie nicht, über wissen.

4 Darauf bestehen keine Warnungen, stattdessen Warnungen wie Fehler zu behandeln. Obwohl Sie wissen vielleicht, warum eine Warnung auftritt, und dass es jetzt keine große Sache ist, könnte eine zukünftige Version von Perl keine mehr hinnehmen müssen oder ändern dieses Verhalten--in diesem Fall, dass die Warnung brach Ihr Programm. Perl-Programme, die ausgeführt werden keine Warnungen müssen weniger Fehler.

Die Perl-Debugger verwenden

5 Den Perl-Debugger zu starten. Starten Sie Perl mit dem Perl-Befehl manuell und verwenden Sie den -d-Schalter, gefolgt von Ihrem Skript und alle Argumente, die Sie an das Skript übergeben möchten: "perl -d myscript.pl arg1 arg2"

6 Das Programm-Liste, wie es leichter ist, den Code im Debugger anzuzeigen, wenn Sie es Debuggen und brauchen die Zeilennummern Haltepunkte festgelegt. Sie können einige oder alle das Programm mit dem Befehl l auflisten. Sie können eine Zeilennummer, eine Reihe von Zeilennummern oder den Namen einer Funktion Liste angeben.

7 Breakpoints gesetzt sowie mit dem Befehl "b" im Abschnitte des Codes, die Sie denken sind gebrochen. Haltepunkte Debuggers des beim Erreichen der geraden oder Funktion Debuggen beenden. Sie lassen sich in Linien oder Funktionen, und können Bedingungen haben befestigt. Z. B. um einen Haltepunkt festzulegen, auf Linie 531 mit der Bedingung der "$a > 10", verwenden Sie den folgenden Befehl: "b 531 $a > 10"

8 Führen Sie das Programm, mit dem "R"-Befehl. Dadurch wird das Programm ausgeführt, bis ein Haltepunkt erreicht wird.

9 Schritt für Schritt durch das Programm. Wenn das Programm ein Haltepunkt gestoppt, Schritt für Schritt durch das Programm Zeile für Zeile mit dem Befehl "n". Hiermit können Sie isolieren, wo das Programm unterbrochen wird.

Tipps & Warnungen

  • Perl kann Sie häufige Fehler warnen, wenn Sie die Warnungen-Flag verwenden.
  • Der Perl-Debugger ist oft schneller wenn man ein großes Problem mit Ihrem Programm hat, auch wenn Sie zum Nachschlagen, Befehle, um den Job zu erledigen.