Recientemente he estado trabajando en la refactorización de partes de la base de código con la que estoy trabajando actualmente, no solo para comprenderlo mejor, sino también para que sea más fácil para otros que están trabajando en el código.
Tiendo a inclinarme al lado de pensar que el código autodocumentado es bueno . Simplemente creo que es más limpio y si el código habla por sí mismo, bueno ... Eso es genial .
Por otro lado tenemos documentación como javadocs. También me gusta esto, pero existe un cierto riesgo de que los comentarios aquí se desactualicen (así como los comentarios en general, por supuesto). Sin embargo, si están actualizados, pueden ser extremadamente útiles, por ejemplo, para comprender un algoritmo complejo.
¿Cuáles son las mejores prácticas para esto? ¿Dónde trazas la línea entre el código autodocumentado y los javadocs?