Por varias razones durante el desarrollo, a veces comento código. Como soy caótico y a veces tengo prisa, algunos de estos llegan al control de la fuente.
También uso comentarios para aclarar bloques de código.
Por ejemplo:
MyClass MyFunction()
{
(...)
// return null; // TODO: dummy for now
return obj;
}
Aunque "funciona" y muchas personas lo hacen de esta manera, me molesta que no se pueda distinguir automáticamente el código comentado de los comentarios "reales" que aclaran el código:
- agrega ruido al intentar leer el código
- no puede buscar código comentado, por ejemplo, un enlace de confirmación en el control de origen.
Algunos lenguajes admiten múltiples estilos de comentarios de una sola línea, por ejemplo, en PHP que puede usar //o #para un comentario de una sola línea, y los desarrolladores pueden ponerse de acuerdo en usar uno de estos para el código comentado:
# return null; // TODO: dummy for now
return obj;
Otros lenguajes, como C # que estoy usando hoy, tienen un estilo para los comentarios de una sola línea (¿verdad? Desearía estar equivocado). También he visto ejemplos de código "comentando" usando directivas de compilación, lo cual es excelente para bloques grandes de código, pero un poco exagerado para líneas individuales ya que se requieren dos líneas nuevas para la directiva:
#if compile_commented_out
return null; // TODO: dummy for now
#endif
return obj;
Entonces, como el código comentado ocurre en todos los idiomas (?), ¿No debería el "código deshabilitado" tener su propia sintaxis en las especificaciones del idioma? ¿Los pro (separación de comentarios / código deshabilitado, los editores / control de fuente actúan sobre ellos) son lo suficientemente buenos y los contras ("no deberían comentar de todos modos", no son una parte funcional de un lenguaje, potencial retraso IDE (gracias Thomas )) vale la pena sacrificar?
Editar
Me doy cuenta de que el ejemplo que usé es tonto; el código ficticio podría eliminarse fácilmente ya que se reemplaza por el código real.
/# ... #/que pondría de relieve de manera diferente en el IDE (por señales visuales) y tal vez generar un compilador de alerta que luego sería atrapado y reportado en el nightly build si alguien no comprobar tales cambios de nuevo en control de fuente.