Ostatnio pracuję z obiektem XMLHttpRequest w JavaScript i nie mogłem nie zauważyć, że obudowa tej nazwy nie ma sensu. Dlaczego „XML” jest pisany wielkimi literami, a „HTTP” nie? Oba są akronimami!
Z pewnością bardziej sensowne byłoby, aby nazwa była jedną z następujących:
- XmlHttpRequest (PascalCase, najlepsza praktyka dla nazw klas w JavaScript)
- xmlHttpRequest (camelCase, również powszechne, choć nie dla klas)
- XMLHTTPRequest (caps-for- acronyms , rzadko używane w programowaniu?)
Jestem pewien, że musi być jakiś powód i nie chciałbym myśleć, że teraz jest on osadzony w kamieniu tylko dlatego, że nikt w tym momencie nie kwestionował tego. Czy istnieje inna konwencja nazewnictwa, o której nie wiem?
HttpURLConnection
.HTTP_REFERER
nagłówka ...Odpowiedzi:
Co ciekawe, Microsoft nazwał go
IXMLHTTPRequest
po raz pierwszy, gdy został dodany do biblioteki MSXML .To Mozilla użyła tej nazwy,
XMLHttpRequest
kiedy dodała koncepcję do Gecko, wdrażając pomysł naśladowania interfejsu MS. Od tego czasu stał się standardem defacto, wiążąc wszystkie inne implementacje z decyzją Mozilli.Musiałbyś iść spelunkować w Bugzilli Mozilli, aby zobaczyć, czy możesz znaleźć jakieś uzasadnienie zmiany kapsli, ale podejrzewam, że nie zastanawiałem się zbyt wiele, a dolna
ttp
część części jest przypadkowa.Potwierdza to błędna pisownia interfejsu Microsoft w definicji interfejsu nsIXMLHttpRequest (najwcześniejsza wersja w repozytorium Mozilla Mercurial) :
źródło
XMLHttpRequest
mogą być uważane za wielbłąda obudowy połączonych identyfikatorów.Niektóre wytyczne dotyczące nazewnictwa rozróżniają akronimy „krótkie” i „długie”. Na przykład przewodnik po stylu kodowania środowiska wykonawczego Microsoft .Net określa, że krótkie akronimy powinny być pisane wielkimi literami, podczas gdy długie akronimy powinny zawierać tylko pierwszą literę. Ich próg dla długiego akronimu to 3 litery, więc faworyzuje „XmlHttpRequest”, jednak nie jest nierozsądne sądzić, że niektórzy ludzie mogą stosować podobną regułę z 4 znakami jako próg.
Przejrzałem stare kopie przewodnika po stylu mozilla.org i żaden nie wydaje się precyzować akronimów, ale możliwe jest, że zrobił to starszy przewodnik Netscape lub że programista zastosował regułę, którą wybrał gdzie indziej.
źródło