Skip to main content

Comentarios

Multiline

Utilizar /** ... */ para comentarios multi-línea en descripciones de funcionamiento. Se puede seguir utilizando // ya que Genexus permite auto-comentar con Ctrl-Q | Ctrl-Shift-Q.

// mal
// CrearCliente crea una nuevo cliente
// según las variables:
// &CliNom
// &CliDir
sub 'CrearCliente'
// ...
endsub

// bien
/**
* CrearCliente crea una nuevo cliente
* según las variables:
* &CliNom
* &CliDir
*/
sub 'CrearCliente'
// ...
endsub

Singleline

Utilizar // para comentarios de una sola línea. Estos comentarios deben estar una línea antes del sujeto a comentar. Dejar una línea en blanco antes del comentarios a no ser que sea la pimer línea del bloque o se esté comentando un where de for-each.

// mal
&CliNom = "John Doe" // Se asigna el nombre a la variable

// bien
// Se asigna el nombre a la variable
&CliNom = "John Doe"

// mal
sub 'CrearCliente'
msg( "Creando cliente", status)
// Se crea el cliente
&ClienteBC = new()
&ClienteBC.CliNom = "John Doe"
&ClienteBC.Save()
endsub

// bien
sub 'CrearCliente'
msg( "Creando cliente", status)

// Se crea el cliente
&ClienteBC = new()
&ClienteBC.CliNom = "John Doe"
&ClienteBC.Save()
endsub

// también está bien
sub 'CrearCliente'
// Se crea el cliente
&ClienteBC = new()
&ClienteBC.CliNom = "John Doe"
&ClienteBC.Save()
endsub

Espacios

Comenzar todos los comentarios con un espacio para que sean sencillos de leer.

// mal
//Está activo
&IsActive = true

// bien
// Está activo
&IsActive = true

// mal
/**
*Se obtiene el nombre de la empresa
*para luego desplegarlo
*/
&EmpNom = EmpresaNombreGet( &EmpId)

// bien
/**
* Se obtiene el nombre de la empresa
* para luego desplegarlo
*/
&EmpNom = EmpresaNombreGet( &EmpId)

Prefijos

Agregar prefijos en los comentarios con FIXME o TODO ayudan a otros desarrolladores a entender rapidamente si se está ante un posible problema que necesita ser revisado o si se está sugiriendo una solución a un problema existente. Estos son diferentes a los comentarios regulares porque conllevan a acciones. Estas acciones son FIXME: -- necesita resolverse or TODO: -- necesita implementarse.

FIXME

Usar // FIXME: para marcar problemas.

// FIXME: Revisar cuando &Divisor es 0
&Total = &Dividendo / &Divisor

FIXME

Usar // TODO: para marcar implementaciones a realizar.

// TODO: Implementar la subrutina
sub "CrearCliente"
endsub