so schön ich es einerseits finde, daß PureBasic offensichtlich außerordentlich reichhaltige Debugging-Optionen bereithält, so sehr frustriert es mich, daß häufig die elementarsten Funktionen eines Debuggers bei mir häufig nicht so funktionieren, wie ich das von sehr viel anspruchsloseren Debuggern (wie etwa dem VBA-Debugger) gewohnt bin.
Erstens scheint es nicht möglich zu sein, einen Quellkode vom Start weg und ohne vorher Haltepunkte zu definieren, also beginnend bei der ersten Zeile im Einzelschrittmodus abarbeiten zu lassen. Bei VB ging das einfach durch Drücken von F8. F8 scheint in PureBasic die gleiche Funktion zu haben, nur ist es zu Beginn (also ohne daß ich vorher manuell den Debugger gestartet habe) grau unterlegt bzw. deaktiviert.
Ein anderes häufig auftretendes Problem ist, daß bei Programmen, die ein Fenster (oder GUI) erzeugen, dieses nach Start des Programms manchmal nicht bedienbar ist; es steht dann immer "(keine Rückmeldung) in der Titelzeile, und die Gadgets des Fenster werden entweder gar nicht angezeigt oder können nicht angeklickt werden. Wie gesagt: Manchmal, aber nicht immer; wovon das abhängt ist mir gänzlich unbekannt.
Ich muß auch sagen, daß der Hilfe-Text zum Debugger ("Benutzen des Debuggers") zwar ausführlich, für mich aber wenig hilfreich ist. Demjenigen, der sich erst einmal orientieren will (und an den sollte man bei der Abfassung einer Hilfe immer zuerst denken) ist es verhältnismäßig egal, in wievielen Versionen der Debugger vorliegt. Absatzweise wird dort beschrieben, was man alles machen kann, ohne erst einmal die Grundfunktionen ausführlich zu beschreiben. Und: Obwohl dort, wie gesagt, viel geredet wird, weiß ich bis heute nicht, was denn genau der Unterschied zwischen a) Kompilieren mit Debugger, b) Kompilieren ohne Debugger, aber mit der Option "Debugger verwenden" oder c) Kompilieren ohne Debugger und ausgeschalteter Option "Debugger verwenden", aber mit Debugger-Befehlen im Quelltext selbst ist.
Die wichtigste Funktion eines Debuggers ist meiner Ansicht nach die Variablenbeobachtung. Dazu heißt es dort:
Ich aber habe die Erfahrung gemacht, daß genau das häufig versagt: Man kann den Mauszeiger bei angehaltenem Programm solange über einer Variable ruhen lassen, wie man will; es wird überhaupt nichts angezeigt. Dann bleibt nur noch der Rückgriff auf das Beobachtungsfenster, aber das ist natürlich ein "suboptimaler" Behelf, den ich in VB nie nötig hatte.Der Wert einer Variablen kann sehr schnell angesehen werden, während das Programm läuft, indem der Mauspfeil über eine Variable im Quellcode bewegt und einen kleinen Moment gewartet wird. Wenn die Variable aktuell im Sichtbereich ist und angezeigt werden kann, dann wird ihr Wert als Tooltip an der Mausposition angezeigt.