Formatos de texto para código

¿Qué diferencia hay entre camelCase, PascalCase, snake_case y kebab-case?

Cada formato separa palabras de una manera distinta. La opción adecuada depende del lenguaje, del tipo de nombre y de la guía de estilo del proyecto.

Los formatos no son reglas universales

camelCase, PascalCase, snake_case y kebab-case son convenciones para unir palabras sin espacios. No existe un formato correcto para todos los lenguajes, archivos y sistemas: la elección depende del contexto y de la guía de estilo del proyecto.

La utilidad principal de estas convenciones es hacer visibles los límites entre palabras. En numeroDeIntentos, las mayúsculas internas separan términos; en numero_de_intentos, lo hacen los guiones bajos. Elegir un patrón y mantenerlo suele ser más importante que mezclar varios.

Tabla rápida de comparación

FormatoEjemploUso frecuente
camelCasenumeroDeIntentosVariables, funciones y propiedades en varios lenguajes
PascalCaseNumeroDeIntentosClases, tipos y componentes en muchas guías
snake_casenumero_de_intentosVariables y funciones en Python; claves y datos
kebab-casenumero-de-intentosRutas, nombres web y clases CSS según el proyecto
CONSTANT_CASENUMERO_DE_INTENTOSConstantes en convenciones que lo indiquen
dot.casenumero.de.intentosClaves jerárquicas y configuraciones concretas

camelCase

En camelCase, la primera palabra comienza con minúscula y las siguientes marcan su inicio con mayúscula: guardarDocumento, fechaDeAlta. Es común en ecosistemas donde variables, funciones o propiedades siguen un estilo de «camello bajo».

El formato no decide si una sigla debe conservarse completa. Un proyecto puede preferir parseUrl frente a parseURL. La guía local manda sobre una conversión automática.

PascalCase

PascalCase capitaliza también la primera palabra: GuardarDocumento, FechaDeAlta. Muchas guías lo reservan para clases, tipos, interfaces o componentes, pero no todos los lenguajes coinciden.

La diferencia con camelCase está en la primera letra. Por eso cambiar indiscriminadamente todo un proyecto puede alterar nombres públicos o referencias existentes.

snake_case

snake_case escribe las palabras en minúscula y las une con guiones bajos: guardar_documento. PEP 8 recomienda este patrón para funciones y variables de Python, mientras que las constantes suelen escribirse con mayúsculas y guiones bajos.

El guion bajo suele ser válido dentro de identificadores, pero la posición y las combinaciones iniciales pueden tener significados especiales. No añadas ni elimines guiones bajos de nombres ya definidos sin revisar su función.

kebab-case

kebab-case utiliza guiones medios: guardar-documento. Resulta legible en URLs, slugs y algunos nombres de archivos o selectores, pero el guion puede interpretarse como operador de resta en lenguajes de programación. Por eso no es una opción universal para variables.

En una dirección web suele convenir mantener minúsculas, palabras breves y separadores estables. El formato no corrige por sí solo la estructura de la ruta ni evita colisiones.

CONSTANT_CASE y dot.case

CONSTANT_CASE combina mayúsculas con guiones bajos y se usa en convenciones que distinguen constantes: MAXIMO_DE_INTENTOS. La caja tiene significado de estilo, no convierte automáticamente el nombre en una constante.

dot.case une palabras con puntos: configuracion.de.usuario. Puede aparecer en claves de configuración, nombres jerárquicos o espacios de nombres, pero el punto también tiene funciones sintácticas propias. Comprueba siempre el formato admitido por el sistema de destino.

Acentos, ñ y normalización

Los lenguajes modernos pueden admitir identificadores Unicode, pero la compatibilidad real depende de herramientas, equipos y convenciones. Este sitio elimina diacríticos habituales al generar formatos técnicos: configuración pasa a configuracion y niñez a ninez.

Esta normalización es una decisión de portabilidad, no una regla ortográfica. En texto español ordinario deben conservarse tildes y eñes. La transformación solo se aplica al resultado técnico y no modifica la entrada.

Números, siglas y palabras reservadas

Un resultado que comienza con una cifra puede no ser un identificador válido. Tampoco se comprueban palabras reservadas como las que cada lenguaje impide usar en ciertas posiciones. class, for o equivalentes pueden requerir otro nombre según el entorno.

Las siglas necesitan revisión humana. XMLHttpRequest puede separarse como xmlHttpRequest, pero un equipo quizá utilice otra convención. La herramienta detecta patrones frecuentes; no conoce el vocabulario interno del proyecto.

Cómo elegir un formato

  1. Identifica dónde se usará el nombre: variable, clase, archivo, URL, clave o constante.
  2. Consulta la guía oficial del lenguaje y la guía del repositorio.
  3. Comprueba cómo se tratan siglas, números y abreviaturas.
  4. Genera una propuesta con la herramienta de formatos para código.
  5. Revisa palabras reservadas y referencias existentes antes de sustituir nombres.

Regla práctica: usa la convención exigida por el contexto y mantén consistencia. El conversor acelera la escritura, pero no reemplaza la guía de estilo ni un refactor seguro.

Errores frecuentes

  • Usar kebab-case como variable: en muchos lenguajes el guion se interpreta como resta.
  • Confundir PascalCase con camelCase: cambia la caja de la primera letra.
  • Capitalizar todas las siglas: la guía del proyecto puede preferir Url o Http.
  • Eliminar tildes del texto normal: la normalización técnica no se aplica a la prosa.
  • Renombrar sin buscar referencias: un cambio de estilo puede romper importaciones, selectores o claves.
  • Creer que el formato valida: aún debes comprobar reglas y palabras reservadas.

Fuentes consultadas

Preguntas frecuentes

¿camelCase y PascalCase son lo mismo?

No. camelCase comienza con minúscula y PascalCase con mayúscula: miVariable frente a MiVariable.

¿snake_case se usa solo en Python?

No, pero PEP 8 lo recomienda para funciones y variables de Python. Otros lenguajes y proyectos pueden usar convenciones distintas.

¿kebab-case sirve para variables?

Normalmente no en lenguajes donde el guion se interpreta como resta. Es más frecuente en URLs, nombres web y algunos archivos.

¿Debo eliminar tildes y la ñ?

En prosa española no. En identificadores técnicos puede elegirse una forma sin diacríticos por compatibilidad, pero debes seguir la guía del proyecto.