Una de las tareas a priori más sencilla, pero a la misma vez de las más complejas, es la de ponerle un buen nombre a una variable (o a cualquier otro elemento de programación que necesite un nombre). Los programadores necesitan utilizar variables en sus códigos, y además que estas variables tengan nombres que representen claramente la información que contienen.
Dejar nombres bien claros es muy importante para nosotros, ya que si necesitamos volver a trabajar con dicho código (o hacer modificaciones) nos resultará mucho más fácil. Sin embargo, esto cobra aún mayor importancia si otras personas tienen que revisar o modificar nuestro código, ya que ellos no están tan familiarizados con nuestro código y les ayudará mucho a tardar menos tiempo en comprenderlo.
Viñeta de Commit Strip sobre el nombrado de variables.
Veamos una serie de consejos y recomendaciones a la hora de establecer nombres en nuestro código. La mayoría de ellas son simplemente convenciones, no son obligatorias para que el código funcione, pero son altamente recomendables para mejorar la calidad de nuestro código:
Nombres descriptivos
Una mala costumbre habitual cuando se empieza en la programación, es darle un nombre muy poco descriptivo de la información que contiene, simplemente porque es más corto y manejable. Al principio, cuando tenemos pocas variables esto no importa demasiado, pero a medida que el código crece, se vuelve insostenible.
Es muy común tener que volver hacia atrás en nuestro código a cambiar nombres de variables porque hemos cambiado de parecer o porque se nos ha ocurrido un nombre mejor. Esto seguirá ocurriendo hasta que adquirimos cierta experiencia.
Evita nombres poco claros o inconsistentes como
tmp
,a
,b2
,variable2
, etc...
Índices y contadores
A lo anterior, hay una pequeña excepción. Cuando trabajamos en bucles for
(o bucles en general), donde el ámbito de una variable que actúa como contador (índice) es muy reducido (esa variable solo existe y afecta al interior del bucle), se suelen utilizar nombres de variables cortos para ser más productivo y claro.
Las variables que actúan como contador suelen nombrarse con una letra minúscula empezando desde i (de índice):
i
,j
,k
... A veces, también se usan letras comoa
,b
,c
... o la inicial minúscula de lo que representan:c
para un contador,p
para una posición, etc...
Constantes, clases y variables
Las constantes son variables especiales que no varian su valor a lo largo del programa y permanecen como su propio nombre indica: constantes. La convención adoptada con las constantes es que deben ir siempre en MAYÚSCULAS si se tratan de valores sensibles a ser modificados por el programador a lo largo del desarrollo del programa (por ejemplo, una constante con los minutos con los que arrancará una cuenta atrás).
Las clases son estructuras de código más complejas que veremos más adelante. Cuando necesites nombrarlas, es importante recordar que los nombres de las clases se escriben siempre capitalizadas: mayúsculas la primera letra y el resto en minúsculas.
Las variables, por último, siempre deben empezar por letra minúscula.
Independientemente de que sea variable, constante o clase, su nombre nunca podrá empezar por un número, sino que debe empezar por una letra o carácter. Si lo compruebas, verás que es imposible nombrar una variable que empiece por número.
Estilo de nombrado
Al margen del nombre que utilicemos para nombrar una variable, función u otro elemento, tenemos el estilo o convención que utilizaremos para escribir nombres compuestos por varias palabras.
Existen varias convenciones a utilizar:
Nombre | Descripción | Ejemplo |
---|---|---|
lowercase | Todo minúsculas. ❌ No se usa porque en palabras compuestas puede confundir. | precioproducto |
UPPERCASE | Todo mayúsculas. ❌ No se usa porque en palabras compuestas puede confundir. | PRECIOPRODUCTO |
camelCase | Primera palabra, todo minúsculas. El resto, todo minúsculas salvo primera letra. | precioProducto |
PascalCase | Idem, pero las palabras empiezan con la primera letra mayúscula. Se usa en Clases. | PrecioProducto |
snake_case | Las palabras se separan con un guión bajo y se escriben siempre en minúsculas. | precio_producto |
UPPER_SNAKE_CASE | Se usa en constantes ajustables frecuentemente por el programador. | PRECIO_PRODUCTO |
kebab-case | Palabras separadas con un guión normal y en minúsculas. Usadas en HTML/CSS. | precio-producto |
dot.case | Palabras en minúsculas separadas por puntos. ❌ En Javascript no se puede usar. | precio.producto |
Húngara | Prefijo (minúsculas) con el tipo de dato (n = número, t = texto, ...). ❌ Desaconsejada. | nPrecioProducto |
Una buena costumbre es ser consistente y no mezclarlos. Por ejemplo, en HTML la convención de nombrado para clases es kebab-case
, mientras que en Javascript para variables se usa camelCase
. Sin embargo, para clases, por ejemplo, se usa PascalCase
.