Esto es por mi experiencia, pero todavía creo que se puede aplicar y sigue la línea de lo que GlenH7 mencionó.
Trabajo entre 3 empresas haciendo varios proyectos. Las empresas son hermanas entre sí con algunas prácticas estándar y metodología de trabajo, pero también son únicas en muchos sentidos. Dicho esto, generalmente comienzo cada proyecto de nuevo y quiero terminarlo o mostrar progreso. Luego, si me encuentro con un escenario en el que recuerdo un fragmento de código o funcionalidad que escribí para un proyecto anterior, haré una de dos cosas (dependiendo del tiempo):
- Método más rápido
Copie el código anterior del otro proyecto (no tengo mucho tiempo) en mi proyecto actual.
Segundo método más rápido
Copie el código anterior y colóquelo en una biblioteca común, luego incluya esa biblioteca en el proyecto actual (para facilitar el avance).
2b. Si hago cambios en el otro proyecto (original), lo refactorizaré para usar la nueva biblioteca [pero generalmente no lo haré a menos que tenga que volver a tocar ese proyecto].
Solo se advirtió, prueba el demonio de las bibliotecas comunes. Las bibliotecas comunes significan crear dependencias. Las dependencias crean puntos de falla. Aunque es posible que necesite algo modificado ligeramente para su implementación actual, no sabe cómo va a cambiar nada más usando esa biblioteca.