क्या फाइलों को कुछ के साथ नाम दिया जाना चाहिए-hyphens.js, camelCased.js, या कुछ और?
क्या फाइलों को कुछ के साथ नाम दिया जाना चाहिए-hyphens.js, camelCased.js, या कुछ और?
जवाबों:
नामकरण योजना jQuery के उपयोग के समान कुछ का उपयोग करने के लिए एक संभावित नामकरण सम्मेलन है। यह सार्वभौमिक रूप से नहीं अपनाया गया है लेकिन यह बहुत आम है।
product-name.plugin-ver.sion.filetype.js
जहां product-name
+ plugin
जोड़ी एक नाम स्थान और एक मॉड्यूल का भी प्रतिनिधित्व कर सकती है । version
और filetype
आम तौर पर वैकल्पिक हैं।
filetype
फ़ाइल की सामग्री कैसे है के सापेक्ष कुछ हो सकता है। अक्सर देखा जाता है:
min
छोटी फ़ाइलों के लिएcustom
कस्टम निर्मित या संशोधित फ़ाइलों के लिएउदाहरण:
jquery-1.4.2.min.js
jquery.plugin-0.1.js
myapp.invoice.js
मुझे जावास्क्रिप्ट फ़ाइलों के लिए किसी विशेष सम्मेलन के बारे में पता नहीं है क्योंकि वे वास्तव में वेब बनाम सीएसएस फ़ाइलों या HTML फ़ाइलों या उस जैसी किसी अन्य प्रकार की फ़ाइल पर अद्वितीय नहीं हैं। कुछ "सुरक्षित" चीजें हैं जो आप कर सकते हैं जिससे यह संभावना कम हो जाती है कि आप गलती से क्रॉस प्लेटफॉर्म इश्यू में भाग लेंगे:
various-scripts.js
, तो एक हाइफ़न एक सुरक्षित और उपयोगी और आमतौर पर उपयोग किया जाने वाला विभाजक है।जावास्क्रिप्ट फ़ाइलों के नामकरण के लिए कोई आधिकारिक, सार्वभौमिक , सम्मेलन नहीं है।
कुछ विभिन्न विकल्प हैं:
scriptName.js
script-name.js
script_name.js
सभी मान्य नामकरण परंपराएँ हैं, हालाँकि मैं पसंद करता हूँ jQuery का सुझाव दिया नामकरण सम्मेलन (jQuery प्लगइन्स के लिए, हालाँकि यह किसी भी JS के लिए काम करता है)
jquery.pluginname.js
इस नामकरण सम्मेलन की सुंदरता यह है कि यह स्पष्ट रूप से वैश्विक नामस्थान प्रदूषण को जोड़ने का वर्णन करता है।
foo.js
जोड़ता window.foo
foo.bar.js
जोड़ता window.foo.bar
क्योंकि मैंने संस्करण छोड़ दिया है: यह पूर्ण नाम के बाद आना चाहिए, अधिमानतः एक हाइफ़न द्वारा अलग किया गया, प्रमुख और लघु संस्करणों के बीच की अवधि के साथ:
foo-1.2.1.js
foo-1.2.2.js
foo-2.1.24.js
The beauty to this naming convention is that it explicitly describes the global namespace pollution being added.
, इस पर कभी गौर नहीं किया गया कि
Foo
या myFoo
, तो क्या आप फ़ाइल को क्रमशः नाम Foo.js
या नाम देंगे myFoo.js
?
लिंक में प्रश्न आपने जावास्क्रिप्ट चर के नामकरण के बारे में दिया था, फ़ाइल नामकरण के बारे में नहीं, इसलिए उस संदर्भ के लिए भूल जाइए जिसमें आप अपना प्रश्न पूछते हैं।
नामकरण के रूप में, यह शुद्ध रूप से वरीयता और स्वाद का मामला है। मैं हाइफ़न के साथ नामकरण फ़ाइलों को पसंद करता हूं क्योंकि तब मुझे शिफ्ट कुंजी के लिए नहीं पहुंचना पड़ता है, जैसा कि मैं कैमल फ़ाइल नामों के साथ काम करते समय करता हूं; और क्योंकि मुझे Windows और Linux फ़ाइल नामों के बीच अंतर के बारे में चिंता करने की ज़रूरत नहीं है (Windows फ़ाइल नाम केस-असंवेदनशील हैं, कम से कम XP के माध्यम से)।
तो जवाब, इतने सारे की तरह, "यह निर्भर करता है" या "यह आपके ऊपर है।"
एक नियम जिसे आपको पालन करना चाहिए वह आपके द्वारा चुने गए सम्मेलन में सुसंगत होना है।
मैं आम तौर पर कम मामले के साथ हाइफ़न पसंद करता हूं, लेकिन एक बात का अभी तक उल्लेख नहीं किया गया है कि कभी-कभी फ़ाइल नाम बिल्कुल एक मॉड्यूल या तत्काल फ़ंक्शन के नाम से मेल खाने के लिए अच्छा है।
उदाहरण के लिए, मेरे पास एक खुलासा मॉड्यूल है var knockoutUtilityModule = function() {...}
जिसे नॉकआउट यूटिलिटीमॉडल.जेएस नामक अपनी स्वयं की फ़ाइल के साथ घोषित किया गया है, हालांकि वास्तव में मैं नॉकआउट-यूटिलिटी-मॉड्यूल.जेएस पसंद करता हूं।
इसी तरह, चूंकि मैं स्क्रिप्ट्स को संयोजित करने के लिए एक बंडलिंग तंत्र का उपयोग कर रहा हूं, इसलिए मैंने अपनी फ़ाइल, सी # शैली में प्रत्येक को बनाए रखने के लिए तात्कालिक कार्यों (टेम्पर्ड व्यू मॉडल आदि) को परिभाषित करने के लिए लिया है। उदाहरण के लिए, ProductDescriptorViewModel ProductDescriptorViewModel.js के अंदर अपने दम पर रहता है (मैं तत्काल कार्यों के लिए ऊपरी मामले का उपयोग करता हूं)।
MyPlugin
कक्षा में जाना होगाMyPlugin.js
।MenuItem
में जाना होगा घटक प्रतिक्रियाMenuItem.js
। अन्य देवों को 'आपके कूल-मॉड्यूल' को आयात / आयात करना होगा और उसमें से कई प्रतीकों का उपयोग करना होगा, इसलिए इसे नाम देंcool-module.js
। -