Cómo escribir código limpio, claro y ordenado

por:

 

Codigo claro limpio y ordenado

 

En este artículo de hoy, vamos a repasar algunos de los conceptos claves para conseguir que nuestro código sea fácil de leer por otra persona ajena a nuestro desarrollo. La pregunta de cómo mejorar la presentación de nuestro código, es ampliamente formulada y no tiene una contestación única pero intentaremos dar una serie de reglas para mejorarlo.

Uso de bibliotecas

Biblioteca

Esta es una de las maneras más sencillas de hacer nuestro código más limpio y ordenado y además nos va a ayudar en gran medida al mantenimiento del proyecto.

El uso de bibliotecas consiste, en que todas las funciones relacionadas con algo en concreto estén en el mismo archivo de biblioteca. Por ejemplo, si parte de nuestro programa, es un sistema contador de tiempos (para medir eficiencias, o cosas así) nuestra biblioteca debería tener, las siguientes funciones:

  • inicializarTemporizador()
  • activarTemporizador()
  • desactivarTemporizador()
  • mostrarTiempo () para mostrar el tiempo transcurrido en un formato HH:MM:SS (horas, minutos y segundos).

Uso de notación CamelCase

La notación CamelCase, que no suele tener una traducción al español, es un tipo de notación que consiste en eliminar los espacios entre las palabras y marcar el inicio de una nueva palabra con una mayúscula. Las funciones del apartado anterior están escritas con notación CamelCase: mostrarTiempo() o calcularTiempoTotal.

Esta notación está muy extendida en programación y es muy recomendable que sea adoptada, con ello evitamos nombres de variables o funciones del tipo: calcular-tiempo-total, calcular-Tiempo-Total y cualquiera que se os pueda ocurrir. Con la notación CamelCase todo el mundo verá el código mucho más limpio y será más fácil entenderlo.

Como curiosidad la notación CamelCase se llama así porque las mayúsculas, nos recuerdan a las jorobas de los camellos.

La tabulación del código

La verdad, esto es lo más importante para que el código sea medianamente legible. Muchas veces me he encontrado código, que simplemente es imposible de leer al no estar tabulado.

for(i=0;i<MAX;i++){
for(j=0;j<10;j++){ if(i!=25){ while(j>4){
if(j!=6)
printf("Codigo Ilegible");
}
}
}
}

Un código que tiene 10 líneas y que con un golpe de vista, no sabes ni lo que hace, porque no detectas si los bucles están anidados o no. Por ello cada vez que anides algo siempre debe ir tabulado:

for(i=0;i<MAX;i++){
    for(j=0;j<10;j++){
         if(i!=25){
             while(j>4){
                if(j!=6)
                    printf("Codigo Ilegible");
           }
       }
    }
}

El uso de un estilo igual en todo el desarrollo

Una de las cosas, que peor se lleva cuando tienes que leer varios cientos de líneas, es que el programador use distintos estilos de programación en el mismo documento. Esto hace que simplemente te pierdas y no sea nada intuitivo leer el código. Por ello os recomendamos:

  • Si tu código está en inglés, escribe todo el código en inglés, el uso de un “spanglish” o la invención de palabras, no tiene ningún beneficio.
  • Si tu código está en español y quieres que puedan utilizarlos otros, añade los comentarios tanto en inglés como en español.
  • Añade una pequeña explicación de la librería, lo que hace cada función y las variables más importantes que utilizas.
  • Separa cada bloque de código con un salto de línea, en un ordenador no nos cobran por hojas, así que no intentes compactar el código.
  • Si el trabajo es grupal, da unas directrices del estilo a utilizar, de nada sirve que tu sigas un estilo bueno si cada uno de tus compañeros utiliza el suyo propio.

 

Estas son algunas de las sugerencias que os proponemos para mejorar vuestro código. ¿Creéis que nos hemos dejado alguna por poner? ¿Recomendáis algún estilo de programación en particular? Os escuchamos en los comentarios.

The following two tabs change content below.

Jorge Durán

Administrador, redactor y creador de Somos Binarios
Entusiasta de la tecnología desde los 10 años, desarrollador y creador de varios proyectos de software y autodidacta por naturaleza. Ingeniero Informático por la USAL y .Net backend developer en idealista.

Latest posts by Jorge Durán (see all)

Deja una Respuesta