¿Cuáles son algunas de las mejores prácticas para refactorizar y renombrar en entornos de equipo? Traigo esto con algunos escenarios en mente:
Si una biblioteca a la que se hace referencia comúnmente se refactoriza para introducir un cambio importante en cualquier biblioteca o proyecto que haga referencia a ella. Por ejemplo, cambiar arbitrariamente el nombre de un método.
Si los proyectos cambian de nombre y las soluciones deben reconstruirse con referencias actualizadas a ellos.
Si la estructura del proyecto se cambia para que sea "más organizada" al introducir carpetas y mover proyectos o soluciones existentes a nuevas ubicaciones.
Algunos pensamientos / preguntas adicionales:
¿Los cambios como este son importantes o el dolor resultante es una indicación de que la estructura salió mal?
¿Quién debería asumir la responsabilidad de corregir los errores relacionados con un cambio radical? Si un desarrollador hace un cambio importante, ¿debería ser responsable de entrar en los proyectos afectados y actualizarlos o debería alertar a otros desarrolladores y pedirles que cambien las cosas?
¿Es esto algo que se puede hacer de forma programada o es algo que se debe hacer con la mayor frecuencia posible? Si una refactorización se pospone por demasiado tiempo, es cada vez más difícil conciliar, pero al mismo tiempo en un día gastando incrementos de 1 hora arreglando una construcción debido a los cambios que ocurren en otros lugares.
¿Se trata de un proceso de comunicación formal o puede ser orgánico?