Immer wenn ich feststelle, dass ein großer Teil meines Codes geändert werden muss, entweder weil er falsch ist oder weil er an wichtige architektonische Änderungen angepasst werden muss, die aus anderen Gründen erforderlich sind, ist dies das, was ich normalerweise tue:
- Ich kommentiere den gesamten Code aus, von dem ich vermute, dass er möglicherweise geändert werden muss. Ich behandle den auskommentierten Code als eine Art meiner TODO-Liste.
- Ich überprüfe nach und nach den auskommentierten Code und entkommentiere Teile dieses Codes oder füge sie an einer anderen Stelle ein und bearbeite sie dann nach Bedarf oder schreibe Teile dieses Codes von Grund auf neu, wobei ich den auskommentierten Code als Referenz betrachte. Wann immer ich denke, dass ich mit einem Teil des auskommentierten Codes fertig bin, entferne ich ihn.
- Ich mache so lange weiter, bis ich keinen auskommentierten Code mehr sehe.
Ich sollte beachten, dass ich dies größtenteils bei dem persönlichen Projekt mache, das ich alleine entwickle.
Mir wurde jedoch gesagt, dass ich damit aufhören sollte. Mir wurde gesagt, dass ich stattdessen anfangen sollte, git zu verwenden, indem ich auf alte Commits verweise, um alten Code zu sehen, anstatt auskommentierten Code zu hinterlassen. Mir wurde gesagt:
Das Auskommentieren von Code ist eine schlechte Angewohnheit, die beseitigt werden sollte. Ihnen fehlt die Erfahrung, deshalb verstehen Sie das nicht. Wenn Sie in ein paar Jahren den Code einer anderen Person sehen, die den Code gerne auskommentiert, werden Sie selbst anfangen, diese Person zu beschimpfen. Immer wenn ich auskommentierten Code sehe, entferne ich ihn vollständig, ohne ihn überhaupt anzusehen, da dieser Code normalerweise völlig wertlos ist. Sie werden sicherlich die Nachteile des Auskommentierens von Code in kleinen Ein-Personen-Projekten nicht bemerken. aber wenn Sie einen Job finden und diese Gewohnheit dort behalten, ist es eine Schande.
Darf ich fragen, was sind diese Nachteile von dem, was ich tue, das ich jetzt nicht sehe?
Ich muss sagen, dass ich nicht wirklich darauf aus bin, nur git zu verwenden, um früheren Code zu sehen. Wie gesagt, ich behandle das Auskommentieren von Code als eine Art ToDo-Liste. Während git mir zeigt, wie der Code früher aussah, zeigt es mir nicht klar, welche Teile des Codes noch überprüft werden müssen und welche bereits fertig sind. Ich fürchte, ich könnte einen Teil des Codes übersehen und Fehler einführen.
Der Vollständigkeit halber sollte ich hinzufügen, dass die Person, die ich zitiere, ein erfahrener Entwickler und ein Fan von Onkel Bobs "Clean Code" ist - und Onkel Bob kritisierte es, den Code in seinem Buch scharf zu kommentieren.