Czy pliki powinny być nazywane czymś z łącznikami.js, camelCased.js, czy czymś innym?
Nie mogę znaleźć odpowiedź na to pytanie tutaj .
javascript
naming-conventions
ripper234
źródło
źródło
MyPlugin
Klasa pójdzie wMyPlugin.js
. ZostanieMenuItem
włączony komponent ReactMenuItem.js
. Inni deweloperzy będą wymagali / importowali „twój fajny moduł” i używali z niego wielu symboli, więc nazwij gocool-module.js
. -Odpowiedzi:
Jedną z możliwych konwencji nazewnictwa jest użycie czegoś podobnego do schematu nazewnictwa używanego przez jQuery. Nie jest powszechnie przyjęty, ale jest dość powszechny.
gdzie para
product-name
+plugin
może również reprezentować przestrzeń nazw i moduł .version
Ifiletype
są zazwyczaj opcjonalne.filetype
może być zależne od zawartości pliku. Często spotykane są:min
dla zminimalizowanych plikówcustom
dla niestandardowych plików zbudowanych lub zmodyfikowanychPrzykłady:
jquery-1.4.2.min.js
jquery.plugin-0.1.js
myapp.invoice.js
źródło
Nie znam żadnej szczególnej konwencji dla plików javascript, ponieważ nie są one tak naprawdę unikalne w sieci w porównaniu do plików css lub html lub innego rodzaju tego typu plików. Istnieje kilka „bezpiecznych” rzeczy, które możesz zrobić, aby zmniejszyć prawdopodobieństwo przypadkowego napotkania problemu międzyplatformowego:
various-scripts.js
, łącznik jest bezpiecznym i użytecznym i często używanym separatorem.źródło
Nie ma oficjalnej, uniwersalnej konwencji nazywania plików JavaScript.
Istnieje kilka różnych opcji:
scriptName.js
script-name.js
script_name.js
są wszystkie ważne konwencje nazewnictwa, jednak ja wolę jQuery sugeruje nazewnictwo (dla wtyczek jQuery, chociaż to działa na każdym JS)
jquery.pluginname.js
Piękno tej konwencji nazewnictwa polega na tym, że wyraźnie opisuje ona dodawane globalne zanieczyszczenie przestrzeni nazw.
foo.js
dodajewindow.foo
foo.bar.js
dodajewindow.foo.bar
Ponieważ pominąłem wersjonowanie: powinno ono występować po pełnej nazwie, najlepiej oddzielonej łącznikiem, z kropkami między wersjami głównymi i mniejszymi:
foo-1.2.1.js
foo-1.2.2.js
foo-2.1.24.js
źródło
The beauty to this naming convention is that it explicitly describes the global namespace pollution being added.
, nigdy tego nie zauważyłemFoo
lubmyFoo
, byś po prostu nazwę plikuFoo.js
lubmyFoo.js
odpowiednio?Pytanie w podanym linku mówi o nazywaniu zmiennych JavaScript, a nie o nazwach plików, więc zapomnij o tym w kontekście, w którym zadajesz pytanie.
Jeśli chodzi o nazewnictwo plików, jest to wyłącznie kwestia preferencji i smaku. Wolę nazywać pliki za pomocą łączników, ponieważ wtedy nie muszę sięgać po klawisz Shift, jak to ma miejsce w przypadku nazw plików camelCase; i ponieważ nie muszę się martwić różnicami między nazwami plików Windows i Linux (w nazwach Windows rozróżniana jest wielkość liter, przynajmniej przez XP).
Zatem odpowiedź, podobnie jak wiele innych, brzmi „to zależy” lub „to zależy od ciebie”.
Jedyną zasadą, której należy przestrzegać, jest zachowanie spójności w wybranej konwencji.
źródło
Generalnie wolę łączniki z małymi literami, ale jedna rzecz jeszcze nie wspomniana jest taka, że czasami miło jest mieć nazwę pliku dokładnie pasującą do nazwy pojedynczego modułu lub funkcji, która może zostać utworzona.
Na przykład mam zadeklarowany moduł ujawniający
var knockoutUtilityModule = function() {...}
w swoim własnym pliku o nazwie knockoutUtilityModule.js, chociaż obiektywnie wolę knockout-utility-module.js.Podobnie, ponieważ używam mechanizmu pakietowania do łączenia skryptów, zacząłem definiować funkcje możliwe do natychmiastowego uruchomienia (modele widoków itp.), Każdy w swoim własnym pliku, w stylu C #, w celu zachowania łatwości obsługi. Na przykład ProductDescriptorViewModel żyje samodzielnie w ProductDescriptorViewModel.js (używam wielkich liter do natychmiastowych funkcji).
źródło