No eres la única persona que va a estar mirando y / o trabajando en tu código en el futuro. Probablemente no estarás allí para siempre, e incluso si lo estás, no vas a estar en ese mismo proyecto para siempre.
Es genial que funcione. Pero incluso si funciona extremadamente bien, si nadie más puede leerlo, significa grandes dolores de cabeza en el futuro para quien tenga que lidiar con eso más adelante. Ya sabes, cuando agregan más funciones o modifican funciones, y esas modificaciones rompen lo que escribiste.
Se necesita tiempo y dinero en este momento para que cumpla con los estándares de la compañía para la legibilidad, pero si no se ajusta a los estándares de legibilidad, hay una posibilidad decente de que costará mucho más tiempo y dinero en el futuro.
- ¿Hay ingenieros de software de Google que hayan obtenido un doctorado en informática después de trabajar?
- ¿Cuánto ayuda tener un sitio web personal para obtener pasantías de ingeniería de software?
- ¿Puedo cambiar mi trabajo de entrenador de software a desarrollador de software?
- Soy un desarrollador de software con aproximadamente 2 años de experiencia, ¿quiero explorar el rol como Gerente de Producto? ¿Necesito un MBA para hacer esto?
- Cómo lograr la mentalidad de un ingeniero
Bien, eso es suficiente para defender a tu jefe por ahora.
Dicho todo esto, hay algunas reglas de estilo que creo que realmente apestan y no tienen sentido.
Una de esas cosas, por ejemplo, es el uso de “números mágicos” o números literales que no sean 1, -1 o 0. Por lo general, están prohibidos. Pero lo que hacen los ingenieros de software para evitar el uso de números mágicos en casos obvios es mucho, mucho peor. Por ejemplo:
const int OCHO = 8; const int TWO = 2; const int THREE = 3;
Eso es bastante retrasado.
Y la mayoría de las cosas retardadas de “evitar los números mágicos” son para casos en los que el número se usa un total de una vez y nunca se usa en ningún otro lado. O lo que es aún peor es cuando una constante se define y se usa en algunos lugares, pero la constante es el mismo número que algún otro número literal usado una vez. Cuando la constante definida tiene que cambiar por alguna razón, también cambia ese número literal y arruina el programa y se convierte en una búsqueda de errores para descubrir por qué.
O alguien decide por alguna razón que en todas partes decía OCHO, en realidad tenía que ser 7 (excepto en algunos lugares que no notó), por lo que se ahorra el trabajo y simplemente cambia OCHO = 7.
He visto algo así antes.
En general, usar números mágicos (especialmente un número que aparece en muchos lugares) es una mala idea, pero las distancias que los ingenieros menos creativos harán para evitarlos a menudo son peores cuando están prohibidos.
Hay muchas otras reglas de estilo “estúpidas” que causan más problemas de los que podrían evitar. Puedo entender tu frustración si son reglas de estilo estúpidas que no mejoran la legibilidad o la capacidad de depurar.