Muchas veces los programadores nos centramos en que el código funcione y ya está. Sin embargo, uno de los factores más importantes para que el éste sea legible es el formato que le demos. El estilo del código afectará a su mantenibilidad a lo largo del tiempo, haciendo que sea más o menos sencillo de leer y navegar.
Hay dos tipos de formato que debemos analizar, vertical y horizontal.
En lo que respecta al formato vertical, el libro Clean Code nos aconseja seguir la metáfora del periódico. Lo ideal es que cada fichero fuente sea como un artículo de periódico. El nombre debe ser simple, pero explicativo. Tras ello, el código podrá leerse de arriba a abajo. Empezará con las funciones de alto nivel y se irá adentrando en los detalles más complejos conforme avanzamos. Si una función llama a otra del mismo fichero, deben estar situadas cerca.
Cada grupo de líneas que nos encontremos representará un concepto en sí mismo. Debemos separarlo de otros pensamientos mediante una línea en blanco. Por ello es aconsejable dejar una línea en blanco por ejemplo después de la declaración de imports, variables o entre una función y la siguiente. A su vez, es preferible que conceptos que están relacionados entre sí estén juntos verticalmente. Por ejemplo, indican que es aconsejable que una variable se declare tan cerca de su uso como sea posible. En mi opinión particular, esto no es siempre así, hay veces que tiene más sentido declarar dos variables relacionadas juntas, aunque una de ellas se use más adelante. Por supuesto, siempre teniendo en cuenta el scope.
Además de lo comentado anteriormente, aunque no es una regla fija, se sugiere que los ficheros sean tan cortos como se pueda, intentando no superar las 500 líneas.
Al tratar el formato horizontal, nuestra máxima será mantener las líneas cortas. Hay distintas opiniones sobre cuál es el límite de caracteres ideal, también depende del tamaño de letra que el programador escoja. La recomendación de Uncle Bob es no sobrepasar los 120. Yo aconsejo usar algún formateador como Prettier que se encarga de hacer este trabajo por ti.
El uso de los espacios en blanco dependerá bastante del gusto personal, aunque hay que ser consistente. Por norma general, no pondremos espacios entre los nombres de función y el paréntesis, pero sí lo haremos para los operadores como “=”. Si estamos aplicando una fórmula matemática podemos no separar multiplicaciones y sí hacerlo con las sumas y restas para indicar y recordar la prioridad de cada operación.
Es importante indentar los distintos niveles, para que los humanos podamos seguir de manera correcta los contextos de cada función o bloque de código. No obstante, no hace falta que las declaraciones de variables estén alineadas, suele ser poco útil.
Por último, si trabajamos en equipo, es fundamental e imperativo definir unas reglas comunes para todos los miembros.