Ich würde sagen, dass es wichtig ist, jedes einzelne Detail darüber zu verstehen, warum einige Fehler aufgetreten sind und warum bestimmte Änderungen diese Fehler beseitigt haben, und es ist auch unter Entwicklern üblich, das Programm manchmal zum Laufen zu bringen, ohne wirklich zu wissen, warum das Update funktioniert hat!
Die Kunst, Dinge zu ändern, bis ein Fehler verschwindet, ohne zu verstehen, was sie verursacht hat oder warum die Änderung ihn behoben hat, wird oft als "Voodoo-Programmierung" bezeichnet und ist kein Kompliment. Auf keinen Fall können Sie sicher sein, dass Sie einen Fehler wirklich behoben haben , anstatt ihn für den speziellen Fall, den Sie untersucht haben, teilweise zu beheben, wenn Sie nicht verstehen, was ihn verursacht hat.
Im schlimmsten Fall haben Sie nichts anderes getan, als den Fehler zu beheben: Ich erinnere mich, dass Zeigerfehler aus dem ersten Jahr an der Uni, als viele Schüler C und Zeiger zum ersten Mal lernten, oft aufhörten, sich zu manifestieren, wenn sie Dinge änderten zufällig, da die Änderungen die Datenstrukturen im Speicher so weit neu anordnen würden, dass der Zeigerfehler über ein anderes Speicherbit stapft. Offensichtlich , das hat nicht geholfen überhaupt .
Allerdings ist die kommerzielle Realität des Programmierens oft so, dass es wichtiger ist, den Kunden davon zu überzeugen, dass ein Fehler behoben ist, als sich selbst davon zu überzeugen. Ich würde niemals empfehlen, dass Sie eine Fehlerbehebung deklarieren, wenn Sie keine Ahnung haben, was sie verursacht hat, aber wenn Sie sehen, dass ein Code problematisch ist, und Sie ihn überarbeitet haben, auch wenn Sie "nicht zu 100% sicher" sind, wie dies die Ursache für die Fehlerbehebung ist Fehler zu manifestieren, manchmal müssen Sie nur zum nächsten Fehler übergehen, bevor der Client zu laut über Ihren langsamen Fortschritt schreit.