El estilo de programación: Tabulaciones

Una de las premisas fundamentales de la programación consiste en saber que los programas no se escriben una vez y quedan así para siempre. Cuando se escribe un programa, es normal tener que volver sobre sus instrucciones para hacer una modificación o corregir un error. Y es común que la persona que deba modificar el programa no sea la misma que lo escribió. Sin embargo, dada la complejidad inherente a todo programa, leer el código fuente ya escrito y tratar de entenderlo para hacer la modificación que necesitamos, puede ser toda una odisea.

Para que la tarea de mantenimiento del software sea un poco más sencilla, es necesario que, como programadores, tengamos el hábito de escribir el código de la manera más prolija posible y que logremos un estilo estándar. Para lograr un buen estilo de programación, debemos tener en cuenta algunos consejos.


< ARREGLOS > Visual Basic .Net permite cambiar el tamaño de los arreglos. Para ello, provee la palabra clave Redim. Hay que tener en cuenta, sin embargo, que el Redim destruye el arreglo original y crea uno nuevo, con la consiguiente pérdida de los valores que contenía. Para evitarlo, se puede utilizar Redim Preserve, que luego de crear el arreglo, copia los elementos del viejo.
< MODULARIZACIÓN Y OVERLAYS > En épocas en que la memoria de las computadoras era escasa, muchas veces cargar todo el programa era imposible. La solución consistía en colocar los módulos en archivos separados llamados overlays. Cuando se necesitaba ejecutar un módulo que estaba en un overlay, se descargaba otro de memoria y se cargaba el que tenía el módulo necesario.

TABULACIONES
Las sentencias compuestas pueden estar formadas a su vez por otras sentencias compuestas, así se obtienen anidamientos en el código del programa. Para poder identificar dónde comienza y dónde termina cada nivel de anidamiento, es muy útil tabular hacia la derecha cada sentencia que está dentro de otra (es decir, cada nuevo nivel de anidamiento). Veamos la diferencia entre tabular y no tabular con un ejemplo:

// C# - Forma incorrecta de anidar sentencias
if(a>0) {
for(int i=1;i<a;i++) {
if(i<3)
b=a*i;
else
b=a*(i+3);
}}

// C# - Forma correcta de anidar sentencias
if(a>0) {
    for(int i=1;i<a;i++)
    {
          if(i<3)
             b=a*i;
          else
             b=a*(i+3);
    }
}

En el primer ejemplo, resulta difícil determinar dónde comienza cada nivel de anidamiento, mientras que, en el segundo, queda perfectamente claro a primera vista.

THE CODE PROJECT
Aquí podremos encontrar cientos y cientos de ejemplos de código fuente en .Net, tanto en VB.Net como en C#. Los ejemplos están organizados por categoría y por nivel (desde Principiante hasta Avanzado). Además, la mayoría de los ejemplos están acompañados de un artículo donde se explican sus fundamentos.