Con la experiencia viene el juicio de saber cuándo el código es realmente malo y cuándo está escrito en un estilo diferente. Si es perfectamente funcional y mantenible y hay una buena cobertura de prueba automatizada , entonces no está mal y solo necesita abrir su mente. Probablemente aprenderás algo. El código incorrecto no es funcional y mantenible.
Aquí hay algunos marcadores de código verdaderamente malo:
- Grandes bloques de lógica han sido duplicados en lugar de refactorizados.
- Dependencias circulares entre clases o paquetes
- Alto acoplamiento; baja cohesión
- Variables no utilizadas, escribir en variables que nunca se leen, código inalcanzable.
- Reimplementación de funciones de biblioteca estándar, por ejemplo, formato de fecha.
- Lógica innecesariamente compleja; es decir, 50 líneas de código donde 10 funcionarían bien.
- No hay comentarios que describan el propósito de las clases o métodos.
- Comentarios engañosos.
La falta de pruebas automatizadas no significa que el código sea malo, pero significa que el proyecto es malo.
Estos no son una cuestión de gustos; Estas prácticas hacen que el mantenimiento del programa sea mucho más costoso.
¿Cómo te preparas?
Acepte el hecho de que lleva un tiempo poder trabajar con éxito en una nueva base de código. Si es "perfectamente mantenible" y hay una alta cobertura de prueba, lleva menos tiempo, pero aún así no sucederá de inmediato. Si el código es malo, lo primero que hago es advertir a los interesados que está en mal estado y que el progreso inicial será lento. Si son escépticos, entonces respaldo mi reclamo mostrándoles una muestra de problemas en el código real y explicando cómo varía de las mejores prácticas de la industria.