Traducir las convenciones de nombres del código (localización): camelCase, PascalCase, SNAKE_CASE, kebab-case y Train-Case

Traducir las convenciones de nombres del código (localización): camelCase, PascalCase, SNAKE_CASE, kebab-case y Train-Case
Artículo actualizado el 08/02/2021.

¡Hola! Hoy vengo a presentar unos conceptos de programación que seguro que te parecerán muy curiosos, descriptivos y puede que incluso graciosos. A partir de este momento, los reconocerás por todas partes y esto es realmente útil si te dedicas a la traducción web o de software.

👇 ¿Empezamos?

Legibilidad en el código

En el código es necesario incorporar muchas veces léxico propio del lenguaje escrito/hablado para nombrar las variables, las clases y demás elementos del código fuente.

Sin embargo, como ya sabéis, la introducción de espacios no siempre es posible para que todo funcione correctamente.

¿Pero qué sucede si introducimos palabras juntas?

estoesunejemplo

Cuesta mucho leerlo, ¿verdad?

¿Qué tal así?

estoEsUnEjemplo

O así:

EstoEsUnEjemplo

Puede que os resulte más cómodo si introducimos guiones bajos:

esto_es_un_ejemplo

También lo podemos encontrar con guiones medios:

esto-es-un-ejemplo

Incluso en alguna ocasión se podría combinar los guiones con las iniciales en mayúscula, como en el siguiente ejemplo:

Esto-Es-Un-Ejemplo

Las siguientes opciones son mucho mejores que la primera, ¿verdad?

Por eso, se recomienda usar alguno de estos estilos o convenciones de nombres como buenas prácticas de programación —esto puede depender del lenguaje utilizado, entre otros factores, pero como este no es un blog para programadores, sigamos.

De hecho, en español se denominan «convenciones de nombres» porque forman parte de las convenciones y de las guías de estilo de los desarrolladores, como esta de la documentación de .NET.

Cada uno de estas convenciones tiene un nombre muy visual que nos facilita reconocerlas posteriormente. ¿Y para qué? ¡Para saber que no lo tenemos que tocar!

Vamos a ver las convenciones de nombres 👇.

camelCase y PascalCase

Imagen de un dromedario con las letras camel Case, la segunda palabra con la letra ce en mayúscula.
El dromedario camelCase te ayudará a recordarlo.

Se trata de escribir en mayúscula todas las palabras que forman el nombre excepto la primera.

Esta convención se suele utilizar en las variables de lenguajes orientados a objetos como C# o en PHP, siempre que este se utilice siguiendo el paradigma de programación orientada a objetos (POO).

Pero ¿y si escribimos la primera letra también en mayúscula?

Imagen de un camello con las palabras Pascal Case y Upper Camel Case, todas juntas pero en mayúscula.
El camello UpperCamelCase, PascalCase para los amigos, se diferencia del camelCase en que la primera palabra que forma el nombre también se escribe con mayúscula inicial. De ahí que una de las maneras de denominar esta convención sea UpperCamelCase.

¡Seguro que te recuerda a las redes sociales! Muchos utilizamos esta convención también para los hashtags: #PonUnTraductorEnTuVida.

Además, es también un recurso muy utilizado en nombres corporativos y marcas comerciales, como MasterCard, AliExpress o CaixaBank.

En programación, se suele utilizar para las clases o en ciertos lenguajes de programación como Pascal, de donde recibe su nombre: PascalCase.

SNAKE_CASE, kebab-case y Train-Case

Imagen de una serpiente con la palabra snake guion bajo case.
La serpiente SNAKE_CASE no puede ser más descriptiva: palabras separadas por guiones bajos.

Esta convención tiene variedades (en minúsculas, en mayúsculas…), pero todas se denominan de la misma forma.

Se suele utilizar en C y en Python, siempre y cuando se siga una programación estructurada que recomiende esta convención de nombres.

Imagen con varias brochetas que kebab con la palabra kebab guion medio case.
La convención más sabrosa de todas: kebab-case.

Mira un segundo en la parte superior de esta pantalla, en la URL. Ahí lo tienes: kebab-case.

Aunque otras URL presentarán esta otra sintaxis 👇.

Imagen con una vía y un tren antiguo con la palabra Train, con la te mayúscula, guion medio y Case, con la ce mayúscula.
Las palabras, como vagones de tren: Train-Case.

Train-Case es una variación de kebab-case, pues la única diferencia es que cada una de las palabras empiezan en mayúscula.

Escribiendo este artículo me he acordado de una marca muy conocida que usa esta sintaxis: Coca-Cola.

¿Se te ocurren más ejemplos? Déjamelos en los comentarios ⌨.

Traducción

A continuación, os muestro un ejemplo de código ficticio, algo absurdo pero sencillo, para que veáis algunos de los conceptos anteriores en práctica.

Se trata de un fragmento de código en PHP que recoge el nombre y el apellido del cliente para que, posteriormente, en pantalla los muestre de una determinada manera. Primero nos pide que insertemos el nombre, luego los apellidos y en pantalla nos devolvería la información de la siguiente manera:

Customer: Cristina Lanuza

Ejemplo de código con las convenciones descritas anteriormente.
En un encargo de localización te encuentras con este fragmento de código, ¿cómo lo traducirías?

Confieso que este código no está preparado para ser traducido, pues en teoría traduciríamos únicamente la información marcada en verde de la siguiente manera:

public const PUBLIC_CLIENT_NAME = 'Cliente';

$name = readline('Escribe tu nombre: ');

$surname = readline('Escribe tus apellidos: ');

En pantalla veríamos lo siguiente e introduciríamos los datos (los marco en rojo).

Escribe tu nombre: Cristina
Escribe tus apellidos: Lanuza
Cliente: Cristina Lanuza

No obstante, como digo, este es un ejemplo algo absurdo y no es un caso real. Desarrolladores y personas con conocimientos de programación, no os alteréis.

Por lo que respecta al resto del texto…

Como sucede muchas veces, la mejor traducción es la que compruebas y dejas el texto como aparece en el original —hago un apunte porque no sería la primera vez que el original tiene una errata y me encargo de avisar al cliente, pero sigamos.

Puede que tu primer impulso sea traducir las palabras que conoces, incluso usando la misma sintaxis, como FormatoDelCliente, NOMBRE_PÚBLICO_DEL_CLIENTE, nombreDePila, apellidos… Esto sería un error por muchos aspectos y os aseguro que nada funcionaría.

Si tienes dudas: pregunta al cliente.

Lo más seguro es que no tenga ningún sentido traducir las variables y las constantes de un código y, por ello, a menos que el cliente te indique lo contrario: déjalo como aparece en el original.

Traducir también es saber qué hay que dejar como el original y qué no.

¿Te han parecido curiosos los nombres de las convenciones de nombres?

¿En qué otros casos te has encontrado con palabras escritas de esta manera?

Si quieres saber para qué más te puede servir aprender localización o programación, te invito a que leas el artículo que escribí confesándote que este blog es posible gracias a que amplié los lenguajes que he aprendido.

Cuéntamelo en los comentarios ⌨.

lanuzacristina.com

¿Te ha gustado este artículo?
Entra en mi sitio web y conoce los servicios lingüísticos que ofrezco 👩‍💻.

comments powered by Disqus