Blog / TODO words

Usamos "TODO" para registrar tareas pendientes en el código.

La palabra TODO al comienzo de un comentario, seguido por un mensaje indicando una tarea pendiente, nos permite crear "listas de tareas" que debemos finalizar antes de dar una feature o proyecto por completado.

Ejemplos de uso de "TODO"

Ejemplo 1

Al generar pruebas unitarias con JUnit y Netbeans, cada uno de los métodos de prueba, tiene al final:

// TODO review the generated test code and remove the default call to fail.

fail( "The test case is a prototype." );

La anotación anterior, autogenerada al crear los métodos con las pruebas, nos indica lo que debemos hacer durante la implementación de esas pruebas.


Ejemplo 2

Podemos usar TODO al recoger datos de entrada de un formulario en el servidor, para asegurarnos de que no nos dejamos algo importante por hacer:

// TODO: checks the $email content

$email = trim($_POST[ 'email']);

Y cuando tengamos una demo "funcional", iremos realizando todas las tareas anotadas antes de publicar la aplicación o característica desarrollada.

Otras anotaciones...

"TODO" es la palabra más usada, pero hay otras disponibles según el contexto y el gusto del programador. Entre las más utilizadas tenemos:


BUG

Indica una parte de código que falla. La incluyo cuando me dispongo a arreglar algo, por si me interrumpen para que realice otra tarea.


CAVEAT

Indica una advertencia. Sustituye a CAV, CAVT, WARNING o CAUTION.


DEBUG

Indica un código que debe ser probado.


FAQ

Usada para responder una "pregunta frecuente" sobre alguna implementación concreta.


FIXME

Indica algo que debe ser corregido o mejorado.


HACK

Permite marcar código introducido para el desarrollo que se eliminarán posteriormente, por ejemplo, trazas.


NOBUG

Indica que algo está correcto, aunque puede parecer lo contrario.


NOTE

Usada para introducir "notas" o comentarios destacados.


REVIEW

Indica que algo debe ser revisado.

Herramientas para trabajar con TODO

Lo mejor de usar estas palabras es su simplicidad: solo hay que escribirlas en un fichero. Además, existen herramientas para potenciar su uso.

En Visual Studio uso TODO Highlight y Todo Tree.

La primera permite asignar diferentes colores a las palabras deseadas y las muestra destacadas en el fichero y la barra de scroll vertical. En cuanto a Todo Tree nos permite encontrar todos los TODOs y similares que hemos configurado existentes en un proyecto.

Detalles de estas extensiones.

Con SublimeText uso HighlightWords que muestra las palabras deseadas destacadas en el fichero y el mini mapa. Más detalles aquí

.