Acerca de las guias de estilo (Style guides)

escriba

En la lengua escrita existen reglas que permiten la correcta comunicación entre el autor y el lector.

Entre menos ruido exista en el texto, menor será el esfuerzo que el lector tiene que realizar para comprender la lectura.

Un buen escritor invierte tiempo en escoger la palabra que con mayor certeza describa lo que quiere expresar.

Así como escoger las palabras adecuadas es una tarea delicada y exacta, lo es también el uso correcto de los signos de puntuación, uso de espacios y párrafos, además de otros recursos literarios.

¿Has sentido alguna vez que estás leyendo algo demasiado rápido y que a la vez lo entiendes a la perfección?. Es porque el autor se ha tomado el tiempo para armar la lectura de esa forma.

spaghetti code

Algo similar sucede en el mundo del desarrollo de software.

Un programador pasa mucho tiempo leyendo código escrito por otras personas, incluyendo la documentación de la misma.

Es aquí cuando entran en juego las guías de estilo (nada que ver con css o style sheets).

Una guía de estilo es un conjunto de reglas que han establecido los programadores para facilitar la lectura de su código.

No es algo funcional (al menos no directamente).

Es la manera en que está estructurado su código fuente.

¿Tabs o espacios?, ¿2 o 4?, ¿corchete abre en misma linea o en linea nueva?, ¿debe haber un espacio después del if ?, ¿snake_case o camelCase o kebab?...

linter code

Puede parecer un poco tonto pero cuando pasas 8 hrs al día (o más) leyendo código, las guías de estilo realmente ayudan a que el desgaste mental sea menor, permitiendo que concentres tus esfuerzos en lo que realmente importa.

Somos humanos y nuestros recursos son limitados, incluyendo el tiempo que podemos pasar concentrados en una tarea como programar.

Sí, lo preguntan en entrevistas de trabajo

Es bastante común que te pregunten qué guías de estilo has seguido o cuales conoces.

¿De dónde saco una guía de estilo?

Depende, hay guías de estilo para todo, muchas veces tienen variantes.

Te recomiendo buscar en google "style guide" + lo que quieras.

Por ejemplo "style guide go"

Si puedes, usa un linter

Un linter es una herramienta que te ayuda a seguir la guía de estilo, es muy probable que ya exista uno para tu lenguaje.

Los linter normalmente lo conectas a tu IDE, para que se ejecute automáticamente.

Un ejemplo de estos es ESLint para javascript.