Recientemente descubrí la alegría de la función "Guardar acciones" en el IDE de Eclipse. Puedo forzarlo para reformatear mi código, insertar las anotaciones @Override
faltantes y hacer cosas ingeniosas como eliminar paréntesis innecesarios en expresiones o poner la palabra clave final
en todas partes automáticamente cada vez que golpeo ctrl + S
. Activé algunos de esos disparadores y, muchacho, ¡ayuda mucho!
Resultó que muchos de esos factores desencadenantes actúan como una rápida comprobación de validez de mi código.
- Tenía la intención de anular un método pero la anotación no apareció cuando presioné
ctrl + s
? - ¡Quizás jaleé los tipos de parámetros en alguna parte!
- ¿Se han eliminado algunos paréntesis del código al guardar? - tal vez esa expresión lógica es demasiado difícil para que un programador pueda moverse rápidamente. De lo contrario, ¿por qué agregaría esos paréntesis en primer lugar?
- Ese parámetro o variable local no es
final
. ¿Tiene tener para cambiar su valor?
Resultó que cuanto menos variables cambian, menos problemas tengo en el momento de la depuración. ¿Cuántas veces estuvo siguiendo el valor de alguna variable solo para descubrir que de alguna manera cambia de, digamos, 5 a 7? "¡¿Cómo diablos podría ser ?!" te preguntas y pasas las próximas dos horas entrando y saliendo de innumerables métodos para descubrir que has cometido un error en tu lógica. Y para solucionarlo, debe agregar una bandera más, un par de condiciones y cambiar cuidadosamente algunos valores aquí y allá.
¡Oh, odio la depuración! Cada vez que ejecuto el depurador siento que mi tiempo se está agotando y desesperadamente necesito ese tiempo para hacer que al menos algunos de mis sueños de la infancia se hagan realidad. Al diablo con la depuración! final
s significa que no hay más cambios de valor misteriosos. Más final
s = > partes menos endebles en mi código = > menos errores = > ¡Más tiempo para hacer cosas buenas!
En cuanto a final
de clases y métodos realmente no me importa. Me encanta el polimorfismo. Polimorfismo significa reutilizar significa menos código significa menos errores. JVM hace un trabajo bastante bueno con la desvirtualización y el método de incorporación de todos modos, por lo que no veo un valor en las posibilidades de reutilización de código para obtener beneficios de rendimiento poco sólidos.
Ver todos esos final
s en el código es un poco molesto al principio y también toma tiempo acostumbrarse. Algunos de mis compañeros de equipo todavía se sorprenden al ver tantas palabras clave final
. Me gustaría que hubiera un ajuste en el IDE para colorear la sintaxis especial para ello. Me encantaría cambiarlo a un tono de gris (como las anotaciones) para que no se distraigan al leer el código. Eclipse actualmente tiene un color separado para return
y todas las demás palabras clave, pero no para final
.