Si alguna vez has programado en conjunto con otras personas sabés que el estilo de cada uno en la mayoría de los casos es diferente. Si llevás mucho tiempo de programar lo más posible es que hayas desarrollado tu propio estilo con el que te sentís cómodo y te parece que es la manera correcta de hacerlo. Y, ¿si no existe una manera correcta?
Realmente, el estilo del código no es representativo de las funcionalidad que este tenga, un código que no lleva ningún estilo específico puede cumplir con su propósito igual que uno que lleva un estilo.
Entonces, ¿por qué acogerse a un estándar o guía de estilo?
La codificación en el estilo o estándar dominante de un idioma nos ayudará a que nuestros programas encajen en el ecosistema del idioma. También, nos resultará más fácil contribuir a proyectos de código abierto y hacer que otros contribuyan a los nuestros si las cosas son familiares y se acuerdan desde el principio.
Además, nos va a evitar discusiones innecesarias sobre el estilo de quien es mejor y nuestros yo del futuro nos lo agradecerán.
Entonces, si estamos escribiendo un programa para uso personal en el que nadie más tiene que contribuir, podemos usar las herramientas y el estilo que nos hagan más felices. Cuando trabajamos en equipo, debemos tratar de reducir la fricción siempre que sea posible, ser profesionales y no preocuparnos por las cosas pequeñas. Aquí es donde las guías cobran sentido.
El estilo Standard
En JavaScript no existe un estilo oficial, sin embargo, Standard es uno de los más utilizados y mejor aceptados por la comunidad. Esta guía está incluida como un paquete dentro del manejador de paquetes de npm, por lo que su instalación es sumamente sencilla.
npm install standard
O bien si preferimos instalarlo como una dependencias de desarrollo
npm install standard --save-dev
Este módulo tiene 3 características principales que le ahorrarán tiempo a todo el equipo.
- Configuración rápida y fácil: Una vez instalado el paquete de Standard en nuestros proyectos basta con utilizar el comando standard para revisar todo el código y encontrar las discrepancias con las reglas de la guía (Más adelante mencionaremos de que reglas estamos hablando).
- Formateo automático del código: Ya habíamos utilizado el comando
standard
para revisar el código. Pero, si efectivamente se encuentran discrepancias, ¿cómo lo soluciono? Muy fácil! Utilizamos el comandostandard --fix
y las inconsistencias desaparecerán. - Encontrar problemas de manera temprana: Esta quizás es la característica más importante ya que el tiempo de un desarrollador es sumamente valioso. Nos ahorramos el tiempo de hacer revisiones del estilo del código eliminando inconsistencias entre el dueño del repositorio y los contribuidores.
Ahora si, ¿cuales son estas reglas de las que tanto hemos hablado y que relevancia tienen para el desarrollo de código? En este blog vamos a mencionar algunas de las reglas que podes encontrar en la pagina oficial de Standard.
Reglas
- 2 espacios como sangría.
- Usar comillas simples en cadenas de texto con la excepción de escapado de texto
- No dejar variables sin usar – esta captura toneladas de bugs!
- Sin punto y coma – Esta es una de las reglas más discutidas y controversiales, pero no tengas miedo tu código no se romperá por no tener punto y coma al final de cada expresión.
- Nunca empezar una línea con
(
,[
, o`
– Este es el único problema al evitar punto y coma – automáticamente verificado para ti! - Espacio después de las palabras claves
if (condition) { ...
} - Espacio después del nombre de función
function name (arg) { ... }
- Usar siempre
===
en vez de==
– peroobj == nul
l está permitido para verificarnull || undefined
. - Gestionar siempre el parámetro de función
err
de node.js - Usar siempre el prefijo
window
en los globales del navegador – A excepción dedocument
ynavigator
esto está bien
Esta última previene el uso accidental de mal-llamados globales del navegador como open
, length
, event
, y name.
La lista completa podemos encontrarla en la página oficial Standard junto con ejemplos para cada regla y enlaces de interés. Te recomendamos que la visites al menos una vez para familiarizarte con las reglas.
En la siguiente entrada de Standard revisaremos cómo podemos automatizar el proceso de probar si nuestro código sigue las reglas de la guía. ¡No te lo pierdas!