Siempre que descubro que es necesario cambiar una gran parte de mi código, ya sea porque es incorrecto o porque debe adaptarse a los principales cambios arquitectónicos necesarios por otros motivos, esto es lo que hago normalmente:
- Comento todo el código que sospecho que podría tener que cambiar. Trato el código comentado como una especie de mi lista TODO.
- Gradualmente reviso el código comentado y descomenta partes de este código, o los copio y pego en otro lugar y luego los edito según sea necesario, o reescribo partes de este código desde cero, mirando el código comentado como referencia. Cada vez que creo que he terminado con una parte del código comentado, lo elimino.
- Continúo esto hasta que no puedo ver más código comentado.
Debo señalar que estoy haciendo esto en gran medida en el proyecto personal que estoy desarrollando solo.
Sin embargo, me dijeron que debería dejar de hacer esto. Me dijeron que, en cambio, debería comenzar a usar git, refiriéndome a las confirmaciones antiguas para ver el código antiguo, en lugar de dejar el código comentado. Me dijeron:
Comentar el código es un mal hábito que debería eliminarse. Te falta experiencia, así que no lo entiendes. Si, dentro de unos años, ve el código de otra persona a la que le gusta comentar el código, usted mismo comenzará a insultarlo. Cada vez que veo un código comentado, lo elimino en su totalidad, sin siquiera mirarlo, porque generalmente dicho código no tiene ningún valor. Ciertamente no podrá ver las desventajas de comentar el código en proyectos pequeños de una sola persona; pero si encuentras un trabajo y mantienes este hábito allí, será una pena.
¿Puedo preguntar cuáles son estas desventajas de lo que estoy haciendo que no puedo ver ahora?
Debo decir que no estoy realmente interesado en usar solo git para ver el código pasado. Como dije, trato de comentar el código como una especie de lista de tareas pendientes; mientras que git me mostrará cómo se veía el código, no podrá mostrarme claramente qué partes del código aún son necesarias para revisar y cuáles ya están hechas. Me temo que puedo perder parte del código e introducir errores.
Para completar, creo que debería agregar que la persona que estoy citando es un desarrollador experimentado y un fanático del "Código limpio" del tío Bob, y el tío Bob criticó comentar el código con dureza en su libro.