El caso de Carmel
Camel case (a veces estilizado como camelCase o CamelCase, también conocido como camel caps o más formalmente como mayúsculas intermedias) es la práctica de escribir frases sin espacios ni puntuación. El formato indica la separación de palabras con una sola letra en mayúscula, y la primera palabra que comienza con cualquier caso. Los ejemplos comunes incluyen "iPhone" y "eBay". A veces también se usa en nombres de usuario en línea como "johnSmith" y para hacer que los nombres de dominio de varias palabras sean más legibles, por ejemplo, al promocionar "EasyWidgetCompany.com".
El caso Camel se usa a menudo como una convención de nomenclatura en la programación de computadoras, pero es una definición ambigua debido a la mayúscula opcional de la primera letra. Algunos estilos de programación prefieren mayúsculas y minúsculas con la primera letra en mayúscula, otros no. Para mayor claridad, este artículo llama a las dos alternativas caso de camello superior (letra mayúscula inicial, también conocida como caso de Pascal o caso irregular) y minúscula camello (letra minúscula inicial, también conocida como caso dromedario). Algunas personas y organizaciones, especialmente Microsoft, usan el término camel case solo para minúsculas camel, designando Pascal case para mayúsculas camel.
Camel case es distinto de title case, que usa mayúsculas en todas las palabras pero conserva los espacios entre ellas, y de las letras Tall Man, que usa mayúsculas para enfatizar las diferencias entre nombres de productos de aspecto similar, como "predniSONE" y "predniSOLONE". Camel case también es distinto de serpiente caso, que utiliza guiones bajos intercalados con letras minúsculas (a veces con la primera letra en mayúscula). En la guía de estilo Ada 95 se recomienda una combinación de caja de serpiente y camello (identificadores Written_Like_This).
Variaciones y sinónimos
La práctica tiene varios nombres, entre ellos:
|
|
La primera aparición conocida del término "InterCaps" en Usenet se encuentra en una publicación de abril de 1990 para el grupo alt.folklore.computers de Avi Rappoport. El primer uso del nombre "Camel Case" ocurre en 1995, en una publicación de Newton Love. Love ha dicho desde entonces: "Con el advenimiento de los lenguajes de programación que tienen este tipo de construcciones, la jovialidad del estilo me hizo llamarlo HumpyCase al principio, antes de decidirme por CamelCase". Lo había estado llamando CamelCase durante años.... La cita anterior fue solo la primera vez que usé el nombre en USENET."
Uso tradicional en lenguaje natural
En combinaciones de palabras
El uso de mayúsculas intermedias como convención en la ortografía regular de textos cotidianos es raro, pero se usa en algunos idiomas como una solución a problemas particulares que surgen cuando se combinan dos palabras o segmentos.
En italiano, los pronombres pueden tener como sufijo a los verbos, y debido a que la forma honorífica de los pronombres en segunda persona se escribe con mayúscula, esto puede producir una oración como non ho trovato il tempo di risponderLe ("No he encontrado tiempo para responderte" – donde Le significa "a ti").
En alemán, la letra mayúscula central I, llamada Binnen-I, se usa a veces en una palabra como StudentInnen ("estudiantes") para indican que tanto Studenten ("estudiantes masculinos") como Studentinnen ("estudiantes femeninas") están pensados simultáneamente. Sin embargo, el uso de mayúsculas a mitad de palabra no se ajusta a la ortografía alemana aparte de los nombres propios como McDonald; el ejemplo anterior podría escribirse correctamente usando paréntesis como Student(inn)en, análogo a "congress(wo)men" en Inglés.
En irlandés, el caso de camello se usa cuando se adjunta un prefijo flexivo a un nombre propio, por ejemplo, i nGaillimh ("en Galway"), de Gaillimh ("Galway&# 34;); an tAlbanach ("la persona escocesa"), de Albanach ("persona escocesa"); y go hÉirinn ("a Irlanda"), de Éire ("Irlanda"). En la ortografía gaélica escocesa reciente, se ha insertado un guión: an t-Albannach.
Esta convención también es utilizada por varias lenguas bantú escritas (por ejemplo, isiZulu, "lengua zulú") y varias lenguas indígenas de México (por ejemplo, náhuatl, totonaca, mixe-zoque, y algunas lenguas oto-mangueanas).
En holandés, cuando se escribe en mayúscula el dígrafo ij, tanto la letra I como la letra J se escriben en mayúscula, por ejemplo, en el nombre del país. IJsland ("Islandia").
En chino pinyin, el caso de camello se usa a veces para los nombres de lugares para que los lectores puedan distinguir más fácilmente las diferentes partes del nombre. Por ejemplo, lugares como Beijing (北京), Qinhuangdao (秦皇岛) y Daxing'anling (大兴安岭) se pueden escribir como BeiJing, QinHuangDao, y DaXingAnLing respectivamente, con el número de letras mayúsculas igual al número de caracteres chinos. Escribir compuestos de palabras solo por la letra inicial de cada carácter también es aceptable en algunos casos, por lo que Beijing se puede escribir como BJ, Qinghuangdao como QHD y Daxing'anling como DXAL.
En inglés, las mayúsculas intermedias normalmente solo se encuentran en escocés o irlandés "Mac-" o "Mc-" nombres, donde por ejemplo MacDonald, McDonald, y Macdonald son variantes ortográficas comunes del mismo nombre, y en anglo-normando "Fitz-" nombres, donde por ejemplo se encuentran tanto FitzGerald como Fitzgerald.
En su guía de estilo en inglés The King's English, publicada por primera vez en 1906, H. W. y F. G. Fowler sugirieron que las mayúsculas intermedias podrían usarse en palabras compuestas triples donde los guiones causarían ambigüedad: el ejemplos que dan son KingMark-like (en contra de King Mark-like) y Anglo-South American (en contra de Anglo-South American ). Sin embargo, describieron el sistema como "demasiado irremediablemente contrario al uso actual".
En transliteraciones
En la transliteración académica de idiomas escritos en otras escrituras, las mayúsculas intermedias se usan en situaciones similares. Por ejemplo, en hebreo transliterado, ha'Ivri significa "la persona hebrea" o "el judío" y b'Yerushalayim significa "en Jerusalén". En nombres propios tibetanos como rLobsang, la "r" representa un glifo de prefijo en la escritura original que funciona como marcador de tono en lugar de una letra normal. Otro ejemplo es tsIurku, una transcripción latina del término checheno para la piedra de remate de las características torres defensivas medievales de Chechenia e Ingushetia; la letra "I" (palochka) no es en realidad mayúscula, denota un fonema distinto del transcrito como "i".
En abreviaturas
Las mayúsculas intermedias se utilizan tradicionalmente en abreviaturas para reflejar el uso de mayúsculas que tendrían las palabras cuando se escribieran en su totalidad, por ejemplo, en los títulos académicos PhD o BSc. Un ejemplo más reciente es NaNoWriMo, una contracción del Mes Nacional de Escritura de Novelas y la designación tanto del evento anual como de la organización sin fines de lucro que lo organiza. En alemán, los nombres de los estatutos se abrevian usando mayúsculas incrustadas, p. StGB para Strafgesetzbuch (Código Penal), PatG para Patentgesetz (Ley de Patentes), BVerfG para Bundesverfassungsgericht (Tribunal Constitucional Federal), o la muy común GmbH, para Gesellschaft mit beschränkter Haftung (sociedad limitada privada). En este contexto, puede haber incluso tres o más mayúsculas de camello, p. en TzBfG para Teilzeit- und Befristungsgesetz (Ley sobre ocupaciones a tiempo parcial y de duración limitada). En francés, los acrónimos de camellos como OuLiPo (1960) fueron favorecidos durante un tiempo como alternativas a las iniciales.
El caso Camel se usa a menudo para transliterar iniciales en alfabetos en los que se pueden requerir dos letras para representar un solo carácter del alfabeto original, por ejemplo, DShK del cirílico ДШК.
Historia del uso técnico moderno
Fórmulas químicas
El primer uso sistemático y generalizado de mayúsculas intermedias con fines técnicos fue la notación de fórmulas químicas inventada por el químico sueco Jacob Berzelius en 1813. Para reemplazar la multitud de convenciones de nombres y símbolos utilizadas por los químicos hasta ese momento, propuso indicar cada elemento químico mediante un símbolo de una o dos letras, la primera en mayúscula. Las mayúsculas permitían fórmulas como "NaCl" escribirse sin espacios y aun así analizarse sin ambigüedad.
Berzelius' se sigue utilizando, aumentado con símbolos de tres letras como "Uue" para elementos no confirmados o desconocidos y abreviaturas para algunos sustituyentes comunes (especialmente en el campo de la química orgánica, por ejemplo, "Et" para "etil-"). Esto se ha ampliado aún más para describir las secuencias de aminoácidos de proteínas y otros dominios similares.
Uso temprano en marcas registradas
Desde principios del siglo XX, las mayúsculas medianas se han utilizado ocasionalmente para nombres corporativos y marcas comerciales de productos, como
- DryIce Corporation (1925) comercializa la forma sólida de dióxido de carbono (CO2) como "Dry Ice", lo que conduce a su nombre común.
- CinemaScope y VistaVision, formatos de película de pantalla ancha rivales (1953)
- ShopKo (1962), tiendas minoristas, más tarde renombrado Shopko
- MisteRogers Barrio, la serie de televisión también llamada Barrio del señor Rogers (1968)
- ChemGrass (1965), más tarde renombrado AstroTurf (1967)
- ConAgra (1971), anteriormente Consolidated Mills
- MasterCraft (1968), fabricante de barcos deportivos
- AeroVironment (1971)
- PolyGram (1972), ex Grammophon-Philips Group
- United HealthCare (1977)
- MasterCard (1979), anteriormente Master Charge
- SportsCenter (1979)
Programación informática
En las décadas de 1970 y 1980, las mayúsculas intermedias se adoptaron como una convención de nomenclatura estándar o alternativa para los identificadores de varias palabras en varios lenguajes de programación. El origen preciso de la convención en la programación de computadoras aún no se ha establecido. En ocasiones, las actas de una conferencia de 1954 se referían informalmente al sistema de codificación rápida de IBM como "SpeedCo". El artículo de Christopher Strachey sobre GPM (1965), muestra un programa que incluye algunos identificadores de mayúscula medial, incluidos "NextCh
" y "WriteSymbol
".
Los identificadores descriptivos de varias palabras con espacios incrustados como fin de archivo
o char table
no se pueden usar en la mayoría de los lenguajes de programación porque los espacios entre las palabras se analizarían como delimitadores entre tokens. La alternativa de juntar las palabras como en endoffile
o chartable
es difícil de entender y posiblemente engañosa; por ejemplo, chartable
es una palabra en inglés (que se puede graficar), mientras que charTable
significa una tabla de chars
.
Algunos de los primeros lenguajes de programación, en particular Lisp (1958) y COBOL (1959), abordaron este problema al permitir que se usara un guión ("-") entre palabras de identificadores compuestos, como en &# 34;FIN DE ARCHIVO": Lisp porque funcionaba bien con la notación de prefijos (un analizador Lisp no trataría un guión en medio de un símbolo como un operador de resta) y COBOL porque sus operadores eran palabras individuales en inglés. Esta convención permanece en uso en estos lenguajes y también es común en los nombres de programas ingresados en una línea de comando, como en Unix.
Sin embargo, esta solución no era adecuada para lenguajes de orientación matemática como FORTRAN (1955) y ALGOL (1958), que usaban el guión como operador de resta infijo. FORTRAN ignoró los espacios en blanco por completo, por lo que los programadores podrían usar espacios incrustados en los nombres de las variables. Sin embargo, esta función no era muy útil ya que las primeras versiones del lenguaje restringían los identificadores a no más de seis caracteres.
Agravando el problema, los conjuntos de caracteres comunes de las tarjetas perforadas de la época solo estaban en mayúsculas y carecían de otros caracteres especiales. Fue solo a fines de la década de 1960 que la adopción generalizada del conjunto de caracteres ASCII hizo que tanto las minúsculas como el carácter de subrayado _
estuvieran disponibles universalmente. Algunos lenguajes, especialmente C, adoptaron rápidamente los guiones bajos como separadores de palabras, y los identificadores como end_of_file
todavía prevalecen en los programas y bibliotecas de C (así como en lenguajes posteriores influenciados por C, como Perl y Python). Sin embargo, algunos lenguajes y programadores optaron por evitar los guiones bajos, entre otras razones para evitar confundirlos con espacios en blanco, y en su lugar adoptaron camel case.
Charles Simonyi, quien trabajó en Xerox PARC en la década de 1970 y luego supervisó la creación del paquete de aplicaciones Office de Microsoft, inventó y enseñó el uso de la notación húngara, una versión de la cual usa letras minúsculas. al comienzo de un nombre de variable (en mayúsculas) para indicar su tipo. Un relato afirma que el estilo de caja de camello se hizo popular por primera vez en Xerox PARC alrededor de 1978, con el lenguaje de programación Mesa desarrollado para la computadora Xerox Alto. Esta máquina carecía de una tecla de guión bajo (cuyo lugar fue ocupado por una flecha hacia la izquierda "←"), y los caracteres de guión y espacio no estaban permitidos en los identificadores, dejando el caso camel como el único esquema viable para nombres legibles de varias palabras.. El PARC Mesa Language Manual (1979) incluía un estándar de codificación con reglas específicas para mayúsculas y minúsculas en camello que las bibliotecas Mesa y el sistema operativo Alto seguían estrictamente. Niklaus Wirth, el inventor de Pascal, llegó a apreciar Camel Case durante un año sabático en PARC y lo usó en Modula, su próximo lenguaje de programación.
El lenguaje Smalltalk, que se desarrolló originalmente en Alto, también usa mayúsculas y minúsculas en lugar de guiones bajos. Este lenguaje se hizo bastante popular a principios de la década de 1980 y, por lo tanto, también puede haber sido fundamental para difundir el estilo fuera de PARC.
El caso de camello superior (o "caso Pascal") se usa en Wolfram Language en el sistema algebraico informático Mathematica para identificadores predefinidos. Los identificadores definidos por el usuario deben comenzar con una letra minúscula. Esto evita el conflicto entre los identificadores predefinidos y los definidos por el usuario tanto hoy como en todas las versiones futuras.
Compañías y productos informáticos
Cualesquiera que sean sus orígenes en el campo de la informática, la convención se utilizó en los nombres de las empresas de informática y sus marcas comerciales desde finales de la década de 1970, una tendencia que continúa hasta el día de hoy:
- (1977) CompuServe
- (1978) WordStar
- (1979) VisiCalc
- (1982) Microprose, WordPerfect
- (1983) NetWare
- (1984) LaserJet, MacWorks, PostScript
- (1985) PageMaker
- (1987) ClarisWorks, HyperCard, PowerPoint
- (1990) WorldWideWeb (el primer navegador web), más tarde renombrado Nexus
Difundir al uso generalizado
En las décadas de 1980 y 1990, después de que la llegada de la computadora personal expusiera la cultura hacker al mundo, el camel case también se puso de moda para los nombres comerciales corporativos en campos no informáticos. El uso generalizado estaba bien establecido en 1990:
- (1980) EchoStar
- (1984) BellSouth
- (1985) EastEnders
- (1986) SpaceCamp
- (1990) HarperCollins, SeaTac
- (1998) Pricewaterhouse Coopers, fusión de Price Waterhouse y Coopers
Durante la burbuja de las puntocom de finales de la década de 1990, los prefijos en minúsculas "e" (para "electrónico") y "i" (para "Internet", "información", "inteligente", etc.) se volvió bastante común, dando lugar a nombres como iMac de Apple y eBox plataforma de software
En 1998, Dave Yost sugirió que los químicos usaran mayúsculas intermedias para facilitar la legibilidad de nombres químicos largos, p. escriba amidofosforibosiltransferasa en lugar de amidofosforribosiltransferasa. Este uso no fue ampliamente adoptado.
El caso Camel se usa a veces para nombres abreviados de ciertos vecindarios, p. Los vecindarios SoHo de la ciudad de Nueva York (Sal sur de Houston Street) y TriBeCa (Triángulo Debajode Canal Street) y San Francisco's SoMa (Sal sur de Mercado). Dichos usos se erosionan rápidamente, por lo que los vecindarios ahora suelen representarse como Soho, Tribeca y Soma.
La capitalización interna también se ha utilizado para otros códigos técnicos como HeLa (1983).
Uso actual en informática
Programación y codificación
Las pautas de estilo de codificación de muchas organizaciones o proyectos de software recomiendan el uso de mayúsculas intermedias para identificadores compuestos. Para algunos lenguajes (como Mesa, Pascal, Modula, Java y Microsoft's.NET) esta práctica es recomendada por los desarrolladores del lenguaje o por manuales autorizados y, por lo tanto, se ha convertido en parte del lenguaje's " cultura".
Las pautas de estilo a menudo distinguen entre mayúsculas y minúsculas, normalmente especificando qué variedad se debe usar para tipos específicos de entidades: variables, campos de registro, métodos, procedimientos, funciones, subrutinas, tipos, etc. Estas reglas a veces son compatibles con herramientas de análisis estático que comprueban la adherencia del código fuente.
La notación húngara original para programación, por ejemplo, especifica que una abreviatura en minúsculas para el "tipo de uso" (no tipo de datos) debe prefijar todos los nombres de variables, con el resto del nombre en mayúsculas; como tal, es una forma de minúscula de camello.
Los identificadores de programación a menudo deben contener acrónimos e iniciales que ya están en mayúsculas, como "archivo HTML antiguo". Por analogía con las reglas de mayúsculas y minúsculas, la representación natural de mayúsculas y minúsculas tendría la abreviatura en mayúsculas, a saber, "oldHTMLFile". Sin embargo, este enfoque es problemático cuando dos acrónimos aparecen juntos (por ejemplo, "parse DBM XML" se convertiría en "parseDBMXML") o cuando el estándar requiere minúsculas pero el nombre comienza con una abreviatura. (por ejemplo, "servidor SQL" se convertiría en "sQLServer"). Por esta razón, algunos programadores prefieren tratar las abreviaturas como si fueran palabras y escriben "oldHtmlFile", "parseDbmXml" o "sqlServer". Sin embargo, esto puede hacer que sea más difícil reconocer que una determinada palabra pretende ser un acrónimo.
Las dificultades surgen cuando los identificadores tienen un significado diferente según el caso, como puede ocurrir con las funciones matemáticas o las marcas comerciales. En esta situación, cambiar el caso de un identificador podría no ser una opción y se debe elegir un nombre alternativo.
Marcado de enlace wiki
El caso camello se usa en algunos lenguajes de marcado de wiki para términos que deben vincularse automáticamente a otras páginas de wiki. Esta convención se usó originalmente en el software wiki original de Ward Cunningham, WikiWikiWeb, y se puede activar en la mayoría de los otros wikis. Algunos motores wiki como TiddlyWiki, Trac y PmWiki lo utilizan en la configuración predeterminada, pero generalmente también proporcionan un mecanismo de configuración o complemento para desactivarlo. Wikipedia anteriormente también usaba enlaces de mayúsculas y minúsculas, pero cambió a marcado de enlaces explícitos usando corchetes y muchos otros sitios wiki han hecho lo mismo. MediaWiki, por ejemplo, no admite camel case para vincular. Algunas wikis que no utilizan la vinculación de mayúsculas y minúsculas camel aún pueden utilizar mayúsculas y minúsculas camel como una convención de nomenclatura, como AboutUs.
Otros usos
El registro NIEM requiere que los elementos de datos XML usen mayúsculas y minúsculas y los atributos XML usen minúsculas.
Las interfaces de línea de comandos y los lenguajes de secuencias de comandos más populares no pueden manejar fácilmente los nombres de archivo que contienen espacios incrustados (generalmente requieren que el nombre se ponga entre comillas). Por lo tanto, los usuarios de esos sistemas a menudo recurren a mayúsculas y minúsculas (o guiones bajos, guiones y otros caracteres 'seguros') para nombres de archivos compuestos como MyJobResume. pdf.
Los servicios de microblogging y redes sociales que limitan el número de caracteres en un mensaje son salidas potenciales para los capitales de medios. El uso de mayúsculas y minúsculas entre palabras reduce la cantidad de espacios y, por lo tanto, la cantidad de caracteres en un mensaje determinado, lo que permite que quepa más contenido en el espacio limitado. Los hashtags, especialmente los largos, a menudo usan mayúsculas y minúsculas para mantener la legibilidad (por ejemplo, #ProblemasEstudiantesUniversitarios es más fácil de leer que #problemasestudiantesuniversitarios); esta práctica mejora la accesibilidad ya que los lectores de pantalla reconocen CamelCase al analizar hashtags compuestos.
En las URL de los sitios web, los espacios se codifican en porcentaje como "%20", lo que hace que la dirección sea más larga y menos legible para los humanos. Al omitir espacios, camel case no tiene este problema.
Estudios de legibilidad
Camel case ha sido criticado por afectar negativamente la legibilidad debido a la eliminación de espacios y mayúsculas de cada palabra.
Un estudio de 2009 que comparó el caso de serpiente con el caso de camello descubrió que los identificadores de caso de camello podían reconocerse con mayor precisión entre los programadores y los no programadores, y que los programadores que ya estaban capacitados en caso de camello podían reconocer esos identificadores más rápido que los identificadores de caso de camello subrayados. identificadores de casos.
Un estudio de seguimiento de 2010, con otros sujetos que contenían principalmente programadores previamente capacitados y que usaban un método de medición mejorado con el uso de equipos de seguimiento ocular, indica: "Aunque los resultados no indican diferencia en la precisión entre los dos estilos, los sujetos reconocen los identificadores en el estilo de subrayado más rápidamente."
Contenido relacionado
La Fundación de Software Apache
Modelos de lenguaje basados en el uso
Gigabit Ethernet