"Puede usarse como referencia" No tiendo a estar de acuerdo con ser una buena razón para dejar el código sin usar. A menudo, solo una pequeña parte del código no utilizado en realidad está demostrando algo interesante. Hay varias formas de documentar y almacenar código útil pero no utilizado.
Aunque el control de versión contendrá un historial que le permitirá restaurar funcionalidades particulares si más tarde decide que se necesita el código, sabiendo que debe buscar en el historial de control de versiones para encontrar xy o z de quién sabe qué. La revisión puede ser un poco tediosa, y a menudo se pasa por alto a menos que tenga una idea bastante específica de lo que está buscando.
El código se puede comentar con una nota sobre cuándo se eliminó y por qué no se eliminó simplemente del código. Sin embargo, esto generalmente se considera un estilo malo, y el código que no se usa y no se mantiene correctamente puede introducir todo tipo de errores si no se comenta más adelante, por lo que generalmente es mejor como un paso de prueba / depuración temporal mientras que la refactorización media es mayor que Una forma de dejar el código de producción.
Mi forma favorita de almacenar el código eliminado, si parece ser útil en el futuro, es hacer un documento de referencia secundario que contenga todos los diversos fragmentos de código eliminado que valga la pena. Cada bloque de código está etiquetado con una breve mención de dónde provino o cualquier otra cosa pertinente para recordar, como cuándo se eliminó o el número de revisión en el que estaba el código. Todo lo que se elimina, pero "potencialmente útil" está en un solo lugar, es fácil de buscar, pero no requiere un esfuerzo constante para mantenerlo y realizar pruebas de forma continua (las pruebas se remiten a cualquier punto en el que se vuelva a introducir el código).