URL: Tanda hubung vs. Garis Bawah [ditutup]

187

Haruskah / about_us atau / tentang-kita ?

Dari sudut pandang kegunaan, saya pribadi berpikir / tentang-kita jauh lebih baik untuk pengguna akhir namun Google dan sebagian besar situs web lainnya (dan kerangka kerja javascript) menggunakan pola penamaan garis bawah. Apakah hanya masalah gaya? Apakah ada masalah kompatibilitas dengan tanda hubung?

lubos hasko
sumber
6
Mengapa tidak /index____1125.aspx (itu empat garis bawah, sangat penting!)
Christian Davén
77
Oh ayolah. Saya tertarik dengan pertanyaan ini dan jawabannya. Pertanyaannya ada 52 upvoate, dan Anda menutupnya? Ini tentang pemrograman. Pemrograman web. Memutuskan cara memberi nama direktori di situs web yang sedang dikembangkan.
Kaydell
3
Video yang bagus menjelaskan dari insinyur Google: youtube.com/watch?v=AQcSFsQyct8
JohnB
Datang ke sini untuk mencari tahu whether_domain_URLs_can_have_underscores.com.
neverMind9

Jawaban:

30

Ini hanya menebak, tetapi tampaknya mereka memilih salah satu yang orang yang paling mungkin tidak akan menggunakan sebuah nama. Dengan cara ini Anda dapat memiliki nama yang menyertakan kata ditulis dgn tanda penghubung, dan masih menggunakan underbar sebagai pembatas kata, misalnya UseTwo-wayLinks dapat dikonversi ke use_two-way_links.

Dalam contoh Anda, / about-us akan menjadi direktori bernama kata ditulis dgn tanda penghubung "about-us" (jika kata seperti itu ada, dan / about_us akan menjadi direktori bernama frase dua kata "tentang kami" dikonversi ke string tunggal karakter bukan putih.

billjamesdev
sumber
11
Tebakan yang masuk akal, tetapi ternyata, sama sekali tidak benar. -1.
Mark Amery
2
Apakah Anda memiliki referensi untuk @MarkAmery itu? Pertanyaannya berkisar pada mengapa Google akan menggunakan garis bawah. Jika Anda menyarankan mereka tidak melakukannya, itu bukan masalah jawaban ini, tetapi masalah pertanyaan.
billjamesdev
1
Pertama, seperti dugaan, cukup masuk akal. Saya akan menambahkan sebagai bagian dari tebakan bahwa programmer menggunakan tanda hubung sebagai pengurangan sehingga garis bawah digunakan; mungkin URL, yang dibuat oleh programmer, ikuti konvensi itu. Penjelasan sebenarnya akan lebih baik. Mark meningkat dengan -1 tanpa cadangan apa pun; berharap saya bisa memberikan komentar a -1.
Gerard ONeill
2
Kutipan @GerardONeill: video ini oleh Google Webmaster: youtube.com/watch?v=AQcSFsQyct8 . Per video itu (diakui sekarang berusia 6 tahun dan mungkin tidak mewakili status quo kontemporer), foo_bardiperlakukan sebagai satu kata sementara foo-bardiperlakukan sebagai dua kata - justru kebalikan dari apa yang berspekulasi jawaban ini adalah kasusnya.
Mark Amery
2
@MarkAmery Saya mendengar apa yang Anda katakan, dan Anda benar-benar hanya menyampaikan kata-kata orang lain dari beberapa waktu yang lalu, tetapi apakah itu tidak membuat Anda mendengar bahwa "foo_bar" diperlakukan sebagai sebuah kata, padahal sebenarnya ' t menjadi satu (karena tidak ada kata-kata dengan garis bawah). Sedangkan "harga diri" adalah kata majemuk yang benar-benar valid dalam bahasa Inggris, dan harus dicari sebagai satu kesatuan?
billjamesdev
193

Dari Google Webmaster Central

Pertimbangkan menggunakan tanda baca di URL Anda. URL http://www.example.com/green-dress.html jauh lebih bermanfaat bagi kami daripada http://www.example.com/greendress.html . Kami menyarankan Anda menggunakan tanda hubung (-) alih-alih menggarisbawahi (_) di URL Anda.

James Lawruk
sumber
4
Google tidak menjelaskan mengapa? Seharusnya ada hubungannya dengan cara mereka mengurai alamat? Atau mungkin itu hanya masalah pengguna akhir.
xji
9
juga perlu dicatat bahwa underscored_text dapat dipilih secara keseluruhan dengan mengklik dua kali pada beberapa perangkat dan menekan lama pada ponsel, sedangkan dengan dash-dipisahkan-teks tindakan yang sama memilih setiap kata yang dipisahkan. Pikirkan jika pengguna akan mencoba menyalin sesuatu dari url
Titus
1
Saya pikir Anda mungkin telah mencapai loop kausalitas di sana @itus, karena itu benar-benar bertentangan dengan ... Bahasa Inggris yang sebenarnya, yang TIDAK memiliki kata-kata, tetapi tidak memiliki garis bawah.
billjamesdev
Dugaan saya adalah tidak ada perbedaan, setidaknya untuk google, apakah ada '_', '-' atau tidak sama sekali. Google pergi dengan apa yang saya asumsikan adalah yang paling mudah dibaca untuk manusia, sedikit
Arthur Tarasov
1
Lihat youtu.be/AQcSFsQyct8 untuk penjelasan Google. (Mereka menggunakan "_" untuk pencocokan pencarian yang tepat.)
Matt Ke
62

Berikut adalah beberapa poin yang mendukung tanda hubung:

  • Tanda garis direkomendasikan oleh Google melalui garis bawah ( sumber ).
  • Tanda hubung lebih akrab bagi pengguna akhir.
  • Tanda hubung lebih mudah ditulis pada keyboard standar (tidak perlu Bergeser).
  • Garis tidak bersembunyi di balik garis bawah.
  • Tanda hubung terasa lebih asli dalam konteks URL karena diizinkan dalam nama domain.
Emanuil Rusev
sumber
53

Ini bukan hanya tanda hubung vs garis bawah:

  • teks dengan spasi
  • teks tanpa spasi
  • dikodekan% 20spaces% 20in% 20URL
  • underscore_means_space
  • dash-means-space
  • plus + berarti + spasi
  • camelCase
  • PascalCase
  • "kutipan teks dengan spasi" (dan kutipan tunggal vs. kutipan ganda)
  • garis miring / sarana / spasi
  • dot.means.space
Tandai Stok
sumber
43
Selamat datang di Wild Wild Web!
Even Mien
Saya cukup menyukai slash / sarana / ruang saat digunakan dengan elegan. Salah satu situs yang saya jalankan menggunakan / about / us bersama berbagai halaman / about / lainnya. Saya tidak ingat melihat contoh arus utama lagi.
Sekalf Nroc
36

Google tidak memperlakukan garis bawah sebagai pemisah kata di masa lalu, yang saya pikir cukup gila, tetapi tampaknya sekarang. Karena riwayat ini, tanda hubung lebih disukai. Meskipun garis bawah sekarang diizinkan dari sudut pandang SEO, saya masih berpikir bahwa tanda hubung adalah yang terbaik.

Salah satu manfaatnya adalah bahwa surfer web semi-komputer-buta huruf Anda rata-rata jauh lebih mungkin untuk dapat mengetik tanda hubung pada keyboard, mereka bahkan mungkin tidak tahu apa garis bawahnya.

MrZebra
sumber
9
Surfer web semi-komputer-buta huruf Anda rata-rata tidak mungkin dapat membedakan antara bilah alamat dan pencarian. Pengguna rata-rata Anda juga JAUH lebih cenderung mengklik daripada mengetik. Katakan saja '
Armstrongest
2
Google masih TIDAK memperlakukan garis bawah sebagai pemisah kata: youtube.com/watch?v=AQcSFsQyct8
Sembiance
16

Saya dulu menggunakan garis bawah sepanjang waktu, sekarang saya hanya menggunakannya untuk bagian situs web yang saya tidak ingin orang lain langsung menautkan, file js, css, ... dll.

Dari sudut pandang SEO, tanda hubung tampaknya menjadi cara yang lebih disukai untuk menanganinya, untuk penjelasan terperinci, dari mulut kuda http://www.mattcutts.com/blog/dashes-vs-underscores/ .

Masalah lain yang tampaknya terjadi, lebih banyak dengan masyarakat umum daripada programmer, adalah bahwa ketika hyperlink dengan garis bawah digarisbawahi, Anda tidak dapat melihat garis bawah. Pengguna mahir akan berhasil, tetapi Joe Public mungkin tidak akan melakukannya.

Masih menggunakan garis bawah dalam kode untuk memilih tanda hubung - programmer memahaminya, kebanyakan orang tidak.

seanb
sumber
8

Guru SEO Jim Westergren menguji ini pada tahun 2005 dari perspektif SEO yang ketat dan sampai pada kesimpulan bahwa + (plus) sebenarnya pembatas kata terbaik. Namun, ini tampaknya tidak masuk akal dan mungkin disebabkan oleh bug dalam algoritma mesin pencari. Dia merekomendasikan - (tanda hubung) untuk keterbacaan dan SEO.

Christian Davén
sumber
7

Saya lebih nyaman dengan garis bawah. Pertama-tama, mereka cocok dengan pengalaman pemrograman reguler saya variable_names_are_not-subtraction, kedua, dan saya percaya ini sudah disebutkan, kata-kata dapat memiliki tanda hubung, tetapi mereka tidak pernah memiliki garis bawah. Untuk mengambil contoh yang benar-benar bodoh, "Negara-negara bangsa" berbeda dari "negara negara bangsa". Yang pertama menerjemahkan sesuatu seperti "tanah negara-bangsa" (berpikir "ini di sini adalah negara gun! Terbaik bergerak, ya?"), Sedangkan yang terakhir terlihat seperti daftar sinonim kadang-kadang. http://example.com/nation-state-country/tampaknya tidak berarti sama dengan http://example.com/nation-state_country/, namun, jika tanda hubung adalah pembatas / "spasi" di samping karakter dalam kata-kata, itu bisa. Yang terakhir tampaknya lebih jelas untuk tujuan yang sebenarnya, sedangkan yang pertama lebih mirip daftar itu, jika ada.

Devin Jeanpierre
sumber
1
Hanya catatan tambahan, bahasa seperti Lisp atau Skema biasa menggunakan nama variabel / fungsi yang dipisahkan dengan tanda hubung, karena minus hanyalah pengenal fungsi sama seperti yang lain (dan pada kenyataannya, mereka memungkinkan karakter yang lebih besar diatur dalam pengidentifikasi).
JS
5

Menggarisbawahi menggantikan ruang di mana spasi putih tidak diizinkan. Tanda hubung (tanda hubung) dapat menjadi bagian dari sebuah kata, sehingga menggabungkan kata-kata dengan tanda hubung yang sudah termasuk tanda hubung adalah jelek / membingungkan.

Buruk:

/low-budget-movies

Baik:

/low-budget_movies
jpeacock
sumber
37
Saya harus tidak setuju dengan ini. Saat ini sudah biasa menggunakan tanda hubung saja. Non programmer menemukan garis bawah secara visual tidak menarik. Tidak ada yang salah dengan contoh pertama. Sebenarnya lebih ramah dibaca.
allesklar
9
Semantik Anda benar, tetapi perbedaannya mungkin lebih membingungkan daripada berguna untuk digunakan dalam URL. Orang lebih cenderung mengingat "abcde" daripada "a-b_c-d_e".
Wadih M.
Seseorang memberi tahu Jeff bahwa dia perlu menulis ulang sistem tag ...
1
Betulkah? @ Wihihih, jika orang mengeja kata dengan benar, tidak ada yang sulit untuk diingat tentang low-budget_movies. Anda tidak harus mengingatnya lebih dari kata "film anggaran rendah". Tentu saja ketika Anda hanya menggunakan a, b, c, d, e, maka itu tidak masuk akal. "Anggaran rendah" tidak sama dengan "anggaran rendah", titik.
fletom
buruk: / anggaran rendah film, buruk: / anggaran rendah_movies, baik: / anggaran rendah% 20movies
Mikhail Antonov
3

Saya pikir dasbor lebih baik dari perspektif pengguna dan tidak akan mengganggu SEO.

Tidak yakin di mana atau mengapa konvensi garis bawah dimulai.

Debat yang sedikit lebih luas

Geoff
sumber
3

Saya lebih suka tanda hubung dengan dasar bahwa garis bawah mungkin dikaburkan sampai batas tertentu dengan garis bawahi tautan. URL tekstual terutama untuk dikenali sekilas daripada secara tata bahasa benar sehingga argumen untuk mempertahankan tanda hubung untuk digunakan dalam kata-kata ditulis dgn tanda penghubung terbatas.

Di mana keakuratan URL tekstual penting adalah ketika membacakannya kepada seseorang, dalam hal ini Anda tidak ingin mengacaukan garis bawah untuk spasi (atau sebaliknya).

Saya juga menemukan tanda hubung lebih menyenangkan secara estetika, jika itu penting.

Andrew Ingram
sumber
2

Untuk tampilan pengguna akhir, saya lebih suka "about-us" atau "about us" bukan "about_us"

Krirk
sumber
1

Secara pribadi, saya akan menghindari menggunakan about-us atau about_us, dan gunakan saja.

RodgerB
sumber
3
/ about / us / no / serius / this / is / it :)
Brad Wilson
12
dan ini solusinya? Baik, bagaimana dengan "about_our_customers" atau banyak set "abouts" yang bisa saya buat yang mungkin relevan. Mengabaikan masalah! = Solusi.
billjamesdev
1

Beberapa web hosting dan server DNS yang lama sebenarnya memiliki masalah dalam menguraikan garis bawah untuk URL, sehingga dapat berperan dalam konvensi seperti ini.

Jon Limjap
sumber
2
Ya, tapi itu hanya di nama host.
Anirvan
0

Saya pribadi akan menghindari semua garis dan garis bawah dan memilih untuk CamelCase atau PascalCase jika kode di nya.

Artikel Wikipedia tentang camelCase menjelaskan sedikit alasan di balik asalnya. Mereka berjumlah

  1. Pemrogram malas yang tidak suka meraih kunci _
  2. Potensi kebingungan tentang keterbacaan
  3. Keyboard "Alto" di xerox PARC yang tidak memiliki tombol garis bawah.

Jika pengguna ingin melihat string maka saya tidak akan melakukan hal di atas dan menggunakan "Tentang kami." atau "AboutUs" jika saya harus sebagai camelCase telah menyebar ke penggunaan umum di beberapa area seperti nama produk. yaitu ThinkPad, TiVo


sumber
Bagaimana mesin pencari tahu di mana kata dimulai atau berakhir?
Joe Phillips
Mengapa mesin pencari tidak berurusan dengan PascalCase sama dengan delimeter lainnya, baik itu _, - atau: dalam hal ini?
1
Saran yang bagus ... adalah pertanyaan ini tentang kode. url [biasanya] tidak peka huruf besar-kecil, dan biasanya ditampilkan dalam huruf kecil.
Armstrongest
1
@dI -_- Ib Hanya nama domain yang tidak peka huruf besar-kecil. Path bersifat peka huruf besar kecil, menjadikan unta dan pascal gaya menjadi opsi yang layak. Meskipun, dengan menggunakannya Anda secara efektif membuat kata-kata yang diwakilinya tidak peka terhadap huruf besar-kecil. Itu akan menjadi masalah terbesar dengan pilihan itu, menurut saya.
Atli
0

Spasi diperbolehkan di URL, jadi Anda bisa menggunakan "/ tentang kami" di tautan (meskipun itu akan disandikan ke "/ sekitar% 20us". Tapi jujur, ini akan selalu menjadi preferensi pribadi, jadi tidak ada jawaban nyata diberikan di sini.

Saya akan pergi dengan konvensi bahwa tanda hubung dapat muncul dalam kata-kata, jadi spasi harus dikonversi ke garis bawah.


sumber