Dado que no podemos definir una variable como fruits in basket porque muchos lenguajes de programación (o quizás todos) interpretarán el carácter espacio como el final del identificador y el principio de otra cosa, tenemos que hacer algo como fruitsInBasket.
Camel, pascal, kebab y snake case (y otros) son convenciones de nomenclatura que utilizamos en programación informática para poder crear nombres compuestos para variables, tipos, funciones, clases y otras estructuras en el código fuente.
camelCase
Las reglas son que ponemos en mayúsculas todas las palabras después de la primera.
| Raw | camelCase |
|---|---|
| frutas en la cesta | frutasEnCesta |
| tiene error | tieneError | es visible | esVisible |
El caso de caramelo es comúnmente usado para variables y funciones en JavaScript.
PascalCase
Aquí tenemos que poner en mayúsculas todas las palabras incluyendo la primera.
| Raw | camelCase | PascalCase |
|---|---|---|
| Frutas en cesta | FrutasEnCesta | FrutasEnCesta |
| tiene error | tieneError | TieneError |
| es visible | esVisible | IsVisible |
PascalCase es a menudo preferido por los programadores de C.
kebab-case
Para este, añadimos un guion entre cada palabra y todas son minúsculas.
| Raw | camelCase | PascalCase | kebab-case |
|---|---|---|---|
| Frutas en cesta | Frutas en cesta | Frutas encesta | |
| tiene error | tieneError | tieneError | tieneError |
| es visible | esVisible | es-visible |
Los atributos HTML5 pueden comenzar con data- como data-name. Además, CSS utiliza guiones en nombres de propiedades como background-color.
caso_serpiente
En contraste con el caso del kebab, para el caso de la serpiente añadimos un guión bajo en su lugar.
| Raw | camelCase | PascalCase | kebab-case | snake_case |
|---|---|---|---|---|
| Frutas en cesta | FrutasEnCesta | FrutasEnCesta | Frutas-encesta | frutas_en_cesta |
| tiene error | TieneError | TieneError | tiene-error | tiene_error |
| es visible | esVisible | esVisible | es-visible | es_visible |
Muchos programadores utilizan guiones bajos especialmente en bases de datos SQL para cosas como creation_datecompany_name, etc.
Algunos de los beneficios que aportan las convenciones de nombres son:
- Consistencia. Ya que nombrar algo es uno de los trabajos más difíciles de un programador, al menos podemos acordar una convención y ser coherentes con ella.
- Mejor comprensión. Los nombres compuestos explican mucho mejor que una palabra o un carácter el propósito de la estructura.
- Legibilidad. Mejora la capacidad de leer el código.
- Automatización. Permite el uso de herramientas automatizadas de refactorización y búsqueda y reemplazo.