URL: guión vs. subrayado [cerrado]

187

¿Debería ser / about_us o / about-us ?

Desde el punto de vista de la usabilidad, personalmente creo que / acerca de nosotros es mucho mejor para el usuario final, pero Google y la mayoría de los otros sitios web (y marcos de javascript) usan un patrón de nombres de subrayado. ¿Es solo cuestión de estilo? ¿Hay algún problema de compatibilidad con guiones?

lubos hasko
fuente
66
Por qué no /index____1125.aspx (¡eso es cuatro guiones bajos, muy importante!)
Christian Davén
77
Oh vamos. Estoy interesado en esta pregunta y en las respuestas. La pregunta tiene 52 respuestas, ¿y la cerró? Se trata de programar. Programacion web. Decidir cómo nombrar directorios en un sitio web que se está desarrollando.
Kaydell
3
Buen video explicado por el ingeniero de Google: youtube.com/watch?v=AQcSFsQyct8
JohnB
Vine aquí para averiguarlo whether_domain_URLs_can_have_underscores.com.
neverMind9

Respuestas:

30

Esto es solo una suposición, pero parece que eligieron el que la gente probablemente no usaría en un nombre. De esta manera, puede tener un nombre que incluya una palabra con guión y aún usar la barra inferior como un delimitador de palabras, por ejemplo, UseTwo-wayLinks podría convertirse en use_two-way_links.

En su ejemplo, / about-us sería un directorio llamado la palabra con guión "about-us" (si existiera dicha palabra, y / about_us sería un directorio llamado la frase de dos palabras "about us" convertida en una sola cadena de caracteres no blancos.

billjamesdev
fuente
11
Suposición razonable, pero resulta que es totalmente falso. -1.
Mark Amery
2
¿Tiene una referencia para ese @MarkAmery? La pregunta giraba en torno a por qué Google usaría guiones bajos. Si está sugiriendo que no, ese no es el problema de esta respuesta, sino el problema de la pregunta.
billjamesdev
1
Primero, según las suposiciones, bastante razonable. Agregaría como parte de la suposición de que los programadores usan el guión como resta para que se use el guión bajo; quizás las URL, creadas por programadores, siguen esa convención. Sin embargo, una explicación real sería mejor. Mark aumenta con un -1 sin ninguna copia de seguridad; Ojalá pudiera dar el comentario un -1.
Gerard ONeill
2
Cita de @GerardONeill: este video de Google Webmasters: youtube.com/watch?v=AQcSFsQyct8 . Según ese video (es cierto que ahora tiene 6 años y posiblemente no representa el status quo contemporáneo), foo_barse trata como una sola palabra, mientras que foo-barse trata como dos palabras, precisamente lo contrario de lo que esta respuesta especula es el caso.
Mark Amery
2
@ MarkAmery Escucho lo que dices, y realmente estás transmitiendo las palabras de otros de hace un tiempo, pero ¿no te molesta escuchar que "foo_bar" se trata como una palabra, cuando literalmente puede " t sea uno (ya que no hay palabras con guiones bajos). ¿Mientras que "autoestima" es una palabra compuesta perfectamente válida en inglés, y debe buscarse como una entidad única?
billjamesdev
193

Desde Google Webmaster Central

Considere utilizar la puntuación en sus URL. La URL http://www.example.com/green-dress.html es mucho más útil para nosotros que http://www.example.com/greendress.html . Recomendamos que utilice guiones (-) en lugar de guiones bajos (_) en sus URL.

James Lawruk
fuente
44
Google no explicó por qué? ¿Supuestamente tiene algo que ver con su forma de analizar direcciones? O probablemente es solo un problema del usuario final.
xji
9
También vale la pena señalar que el texto subrayado se puede seleccionar como un todo haciendo doble clic en algunos dispositivos y presionando prolongadamente en los móviles, mientras que con el texto separado por guiones las mismas acciones seleccionan cada palabra separada. Piense si un usuario alguna vez intentaría copiar algo de la url
Titus
1
Creo que puede haber llegado a un bucle de causalidad allí @Titus, ya que eso es completamente contrario al inglés real ... que tiene guiones en las palabras, pero no tiene guiones bajos.
billjamesdev
Supongo que no hay diferencia, al menos para Google, si hay '_', '-' o nada. Google fue con lo que supongo es lo más legible para los humanos, un guión
Arthur Tarasov
1
Ver youtu.be/AQcSFsQyct8 para la explicación de Google. (Utilizaron "_" para la exacta coincidencia de búsqueda.)
Matt Ke
62

Aquí hay algunos puntos a favor de los guiones:

  • Google recomienda guiones sobre guiones bajos ( fuente ).
  • Los guiones son más familiares para el usuario final.
  • Los guiones son más fáciles de escribir en un teclado estándar (no es necesario cambiar).
  • Los guiones no se esconden detrás de los subrayados.
  • Los guiones se sienten más nativos en el contexto de las URL ya que están permitidos en los nombres de dominio.
Emanuil Rusev
fuente
53

No es solo guión vs. subrayado:

  • texto con espacios
  • textwithoutspaces
  • codificado% 20spaces% 20in% 20URL
  • underscore_means_space
  • tablero-significa-espacio
  • más + significa + espacio
  • el caso de Carmel
  • PascalCase
  • "texto entre comillas con espacios" (y comillas simples vs. comillas dobles)
  • barra oblicua / medios / espacio
  • dot.means.space
Mark Stock
fuente
43
¡Bienvenido a Wild Wild Web!
Incluso Mien el
Soy bastante aficionado a la barra / medios / espacio cuando se usa con elegancia. Uno de los sitios que ejecuto usa / about / us junto con otras páginas / about /. Sin embargo, no recuerdo haber visto más ejemplos convencionales.
Sekalf Nroc
36

Google no trató el guión bajo como un separador de palabras en el pasado, lo que pensé que era una locura, pero aparentemente lo hace ahora. Debido a esta historia, se prefieren los guiones. Aunque los guiones bajos ahora están permitidos desde un punto de vista de SEO, sigo pensando que los guiones son los mejores.

Una de las ventajas es que su internauta promedio de analfabetos semi-informáticos es mucho más probable que pueda escribir un guión en el teclado, es posible que ni siquiera sepan cuál es el guión bajo.

MrZebra
fuente
9
Es poco probable que un internauta medio analfabeto semi-informático sea capaz de distinguir entre la barra de direcciones y la búsqueda. Su usuario promedio también es MUCHO más propenso a hacer clic que a escribir. Solo digo
Armstrongest
2
Google todavía NO trata el guión bajo como un separador de palabras: youtube.com/watch?v=AQcSFsQyct8
Sembiance
16

Solía ​​usar guiones bajos todo el tiempo, ahora solo los uso para partes de un sitio web que no quiero que nadie vincule directamente, archivos js, css, ... etc.

Desde el punto de vista de SEO, los guiones parecen ser la forma preferida de manejarlo, para una explicación detallada, desde la boca de los caballos http://www.mattcutts.com/blog/dashes-vs-underscores/ .

El otro problema que parece ocurrir, más con el público en general que con los programadores, es que cuando se subraya un hipervínculo con guiones bajos, no se puede ver el guión bajo. Los usuarios avanzados lo resolverán, pero Joe Public probablemente no.

Sin embargo, todavía uso guiones bajos en el código con preferencia a los guiones: los programadores los entienden, la mayoría de las otras personas no.

seanb
fuente
8

El gurú del SEO Jim Westergren lo probó en 2005 desde una perspectiva estricta de SEO y llegó a la conclusión de que + (más) era en realidad el mejor delimitador de palabras. Sin embargo, esto no parece razonable y puede deberse a un error en los algoritmos de los motores de búsqueda. Recomienda - (guión) tanto para la legibilidad como para el SEO.

Christian Davén
fuente
7

Me siento más cómodo con los guiones bajos. En primer lugar, coinciden con mi experiencia habitual de programación variable_names_are_not-subtraction, en segundo lugar, y creo que esto ya se mencionó, las palabras pueden tener guiones, pero nunca tienen guiones bajos. Para elegir un ejemplo realmente estúpido, "país nación-estado" es diferente de "país nación-estado". El primero traduce algo así como "la tierra de los estados-nación" (piense "¡este es el país de las armas! Mejor movimiento, ¿oye?"), Mientras que el segundo parece una lista de sinónimos en algún momento. http://example.com/nation-state-country/no parece significar lo mismo que http://example.com/nation-state_country/, y sin embargo, si los guiones son delimitadores / "espacios" además de caracteres en palabras, puede hacerlo. El último parece más claro en cuanto al propósito real, mientras que el primero se parece más a esa lista, en todo caso.

Devin Jeanpierre
fuente
1
Solo una nota al margen, los lenguajes como Lisp o Scheme usan habitualmente nombres de variables / funciones separados con guiones, porque menos es solo un identificador de función como cualquier otro (y, de hecho, permiten un conjunto de caracteres más grande en los identificadores).
JS
5

Los guiones bajos reemplazan los espacios donde no se permiten espacios en blanco. Los guiones (guiones) pueden ser parte de una palabra, por lo que unir palabras con guiones que ya incluyen guiones es feo / confuso.

Malo:

/low-budget-movies

Bueno:

/low-budget_movies
jpeacock
fuente
37
Tengo que estar en desacuerdo con esto. En estos días es costumbre usar solo guiones. Los no programadores encuentran que los subrayados son visualmente poco atractivos. No hay nada malo con el primer ejemplo. En realidad es más amigable de leer.
allesklar
9
Semánticamente tiene razón, pero la distinción puede ser más confusa que útil para el uso en URL. Es más probable que las personas recuerden "abcde" que "a-b_c-d_e".
Wadih M.
Alguien le dice a Jeff que necesita reescribir el sistema de etiquetas ...
1
De Verdad? @Wadih, si las personas escriben palabras correctamente, no hay nada difícil de recordar acerca de las películas de bajo presupuesto. No tiene que recordarlo más que las palabras "películas de bajo presupuesto". Por supuesto, cuando solo usa a, b, c, d, e, entonces no tiene sentido. "Bajo presupuesto" no es lo mismo que "bajo presupuesto", punto.
fletom
bad: / low-budget-movies, bad: / low-budget_movies, good: / low-budget% 20movies
Mikhail Antonov
3

Creo que dash es mejor desde la perspectiva del usuario y no interferirá con el SEO.

No estoy seguro de dónde o por qué comenzó la convención de subrayado.

Un debate un poco más informado

Geoff
fuente
3

Prefiero guiones sobre la base de que un guión bajo puede enmascarar un guión bajo. Las URL textuales son principalmente para ser reconocidas de un vistazo en lugar de ser gramaticalmente correctas, por lo que el argumento para preservar guiones para usar en palabras con guiones es limitado.

Donde la precisión de una URL textual es importante es cuando se la lee a alguien, en cuyo caso no desea confundir un guión bajo para un espacio (o viceversa).

También encuentro guiones más estéticamente agradables, si eso cuenta para algo.

Andrew Ingram
fuente
2

Para la vista del usuario final, prefiero "acerca de nosotros" o "acerca de nosotros", no "acerca de nosotros"

Krirk
fuente
1

Personalmente, evitaría usar about-us o about_us, y solo usar about.

RodgerB
fuente
3
/ about / us / no / serious / this / is / it :)
Brad Wilson el
12
y esta es tu solución? Bien, ¿qué pasa con "about_our_customers" o cualquiera de una miríada de "abouts" que podría llegar a ser relevante? ¡Ignorando un problema! = Solución.
billjamesdev
1

Algunos servidores de alojamiento web y DNS antiguos tienen problemas para analizar los guiones bajos de las URL, por lo que pueden desempeñar un papel en convenciones como estas.

Jon Limjap
fuente
2
Sí, pero eso solo está en los nombres de host.
Anirvan 03 de
0

Yo personalmente evitaría todos los guiones y guiones bajos y optaría por camelCase o PascalCase si está en el código.

El artículo de Wikipedia sobre camelCase explica un poco el razonamiento detrás de sus orígenes. Ascienden a

  1. Programadores perezosos a quienes no les gustaba alcanzar la tecla _
  2. Posible confusión sobre la legibilidad
  3. El teclado "Alto" en xerox PARC que no tenía tecla de subrayado.

Si el usuario va a ver la cadena, no haría nada de lo anterior y usaría "Acerca de nosotros". o "AboutUs" si tuviera que hacerlo ya que camelCase se ha extendido a un uso común en algunas áreas, como los nombres de productos. es decir, ThinkPad, TiVo


fuente
¿Cómo sabría el motor de búsqueda dónde comienza o termina una palabra?
Joe Phillips
¿Por qué el motor de búsqueda no trataría con PascalCase lo mismo que con cualquier otro delímetro, ya sea un _, - o: para el caso?
1
Un buen consejo ... esta pregunta era sobre el código. las URL no suelen ser sensibles a mayúsculas y minúsculas y, por lo general, se muestran en minúsculas.
Armstrongest
1
@dI -_- Ib Solo los nombres de dominio no distinguen entre mayúsculas y minúsculas. El camino distingue entre mayúsculas y minúsculas, lo que hace que los estilos camel y pascal sean una opción viable. Aunque, al usarlos, efectivamente está haciendo que las palabras representen mayúsculas y minúsculas. Ese sería el mayor problema con esa opción, en mi opinión.
Atli
0

Se permiten espacios en las URL, por lo que puede usar "/ about us" en un enlace (aunque eso se codificará en "/ about% 20us". Pero sea honesto, esto siempre será una preferencia personal, por lo que no hay una respuesta real para ser dado aquí.

Iría con la convención de que los guiones pueden aparecer en palabras, por lo que los espacios deben convertirse en guiones bajos.


fuente