XMLHttpRequest neden adlandırma kurallarına uymuyor?


28

Son zamanlarda JavaScript'teki XMLHttpRequest nesnesiyle çalışıyorum ve bu konuda yardımcı olamadım ancak bu adın kasasının bir anlamı olmadığını anladım. 'Http' olmasa da neden 'XML' tamamen kapakta? İkisi de kısaltmalar!

Kuşkusuz, adın aşağıdakilerden biri olması daha mantıklı olacaktır:

  • XmlHttpRequest (PascalCase, JavaScript'teki sınıf adları için en iyi yöntem)
  • xmlHttpRequest ( camelCase , sınıflar için olmasa da yaygındır)
  • XMLHTTPRequest (programlamada nadiren kullanılan kısaltmalar için kapaklar?)

Bunun bir nedeni olması gerektiğine eminim ve o sırada hiç kimse bunu sorgulamadığı için şu an taşa çarptığını düşünmekten nefret ediyorum. Bilmediğim başka bir adlandırma kuralı var mı?


9
Sidenote: Java çok benzer bir adlandırma tutarsızlığı vardır: HttpURLConnection.
Joachim Sauer

6
Sidenote # 2: Bu doğru aksine yazıldığından En azından HTTP_REFERERbaşlığındaki ...
OnoSendai

3
Bunun "Bazı geliştirici bir hata yaptı ve şimdi düzeltemeyiz" kategorisine girdiğinden şüpheliyim, ancak gerçek cevabı bilen dünyada bir kişi olması muhtemel.
Martin Brown

1
Yine de neden adında XML (ya da gerçekten HTTP) bulunduğunu merak etmiyor musunuz?
Monica'ya Zarar Vermeyi Durdurun

Yanıtlar:


15

İlginçtir ki, Microsoft ilk olarak MSXML kütüphanesine ilk eklendiğindeIXMLHTTPRequest onu aradı .

XMLHttpRequestKonsepti Gecko'ya eklediğinde ismi kullanan Mozilla idi ve MS arayüzünü taklit etme fikrini uyguladı. O zamandan beri defacto standardı haline geldi ve diğer uygulamaları Mozilla'nın kararına bağladı.

Buradaki kapakların değişmesi için herhangi bir sebep bulup bulamadığınızı görmek için Mozilla Bugzilla'da konuşmaya gitmek zorunda kalacaksınız, ancak çok fazla düşünülmediğini ve ttpparçanın alt kısmının kazara olmasından şüpheleniyorum .

Bu, nsIXMLHttpRequest arayüz tanımında (Mozilla Mercurial deposundaki en eski revizyon) Microsoft arayüzünün yanlış yazılmasıyla doğrulanmaktadır :

Mozilla'nın XMLHttpRequest'i, Microsoft'un IXMLHttpRequest nesnesinden modellenmiştir. Amaç, Mozilla’nın sürümünün Microsoft sürümüyle mümkün olduğu kadar yakından eşleşmesini sağlamaktı, ancak bazı farklılıklar olması şart.


Ah, anlıyorum, bu yüzden yazımın önceki bir örneğine dayandığı sürece kasıtlı. Hala hoşuma gitmiyor - ama en azından nasıl olduğunu anlayabiliyorum. Mükemmel bir cevap için teşekkürler.
Alec

6
XML ve URL genel olarak tümü büyük harf olsa da, küçük harfli http kaynaklarının HTML'de her yerde bulunabileceğini unutmayın. Böylece , birleşik tanımlayıcıların deve kılıfıXMLHttpRequest olarak görülebilir .
hardmath

2
CVS'deki ilk revizyona geri dönerseniz : bonsai.mozilla.org/cvsblame.cgi?file=mozilla/content/base/… Öyle. Asıl yazar Vidur Apparao'ydu, belki birileri onu izleyebilir (bugünlerde Agari'de CTO'su: agari.com/team/vidur-apparao ) ve ona sor. Ne yazık ki, bu konuda bugzilla'da hiçbir şey yok, Netscape günlerinde, işleri takip etmek için hata yapmaktan habersizlerdi.
Ted Mielczarek

4

Bazı adlandırma kuralları "kısa" ve "uzun" kısaltmalar arasında bir ayrım yapar. Örneğin, Microsoft'un .Net çalışma zamanı için kodlama stili kılavuzu , kısa kısaltmaların kısa harflerle yazılması gerektiğini belirtirken, uzun kısaltmalar yalnızca ilk harfin büyük harflerle yazılması gerektiğini belirtir. Uzun kısaltmaları için eşikleri 3 harftir, bu nedenle "XmlHttpRequest" i tercih eder, ancak bazı kişilerin eşik olarak 4 karakterle benzer bir kural kullanabileceğini düşünmek mantıksız değildir.

Mozilla.org stil rehberinin eski kopyalarına baktım ve hiçbiri kısaltmalar hakkında bir şey belirtmiyor gibi görünüyor, ancak eski bir Netscape rehberinin yapmış olması veya geliştiricinin başka bir yerde seçtiği bir kuralı uygulaması mümkündür.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.