2011-01-27 16 views
10

LotsofC++projects उपयोग ऊंट मामले नामकरण परिपाटी किसी प्रकार का। एसटीएल नामकरण सम्मेलनों का उपयोग करने वाली एकमात्र परियोजना को बढ़ावा दिया जाता है (जहां एसटीएल के लिए ज्यादा प्रोटोटाइप किया जा रहा है)। मुझे पता है कि कुछ परियोजनाएं हैं जो एसटीएल की भविष्यवाणी करती हैं, लेकिन ऊंट केस नामकरण सम्मेलन के साथ सबसे नए कोड बेस (जो एसटीएल का उपयोग करते हैं) छड़ी भी हैं।कोई भी एसटीएल नामकरण सम्मेलनों का उपयोग क्यों नहीं कर रहा है?

तो मेरी प्रश्न हैं:

  • क्यों कोई भी एसटीएल नामकरण सम्मेलनों उपयोग कर रहा है?
  • क्या आप एक नई परियोजना के लिए ऊंट मामले पर एसटीएल नामकरण सम्मेलन का उपयोग करने की सलाह देंगे?
  • मैंने देखा है कुछ परियोजनाओं और सब कुछ के लिए कुछ 'एसटीएल प्रकार' वर्गों (limited_stack, simplify_type) और ऊंट मामले के लिए एसटीएल नामकरण सम्मेलनों का उपयोग करें। यह एप्लिकेशन कोड से बुनियादी ढांचे को अलग करने के लिए एक अच्छा दृष्टिकोण की तरह दिखता है। क्या आप ऐसा करने की सलाह देंगे?

(मुझे पता है कि नामकरण रिवाजों का मौत के लिए चर्चा की गई है। फिर भी मुझे लगता है कि इस सवाल का पहले। उत्तर नहीं दिया गया बंटवारे नामकरण सम्मेलनों की विशेष रूप से विचार कर रहा है, मेरी राय में चर्चा करने योग्य।)

+0

इस शैली की अभी तक एक और सवाल .... –

+7

एक प्रोग्रामर stdlib सम्मेलनों और @andreas नामकरण नहीं देखा है का उपयोग करता है, यह हुआ है? निश्चित रूप से * लोग * उन सम्मेलनों का उपयोग कर रहे हैं। –

+4

असली प्रोग्रामर अंडरस्कोर का उपयोग करते हैं! –

उत्तर

3

सबसे पहले, मुझे तनाव दें कि मेरा जवाब केवल मेरे अनुभव के आधार पर बहुत अधिक व्यक्तिपरक है, किसी भी बाहरी डेटा या संसाधनों का समर्थन नहीं करता है।

एक सम्मेलन सिर्फ यही है: एक सम्मेलन। यह महत्वपूर्ण नहीं है कि आप किस का उपयोग करते हैं, बल्कि आपके लिए और प्रोग्रामर जो आपके द्वारा इस समय काम कर रहे कोड को बनाए रखने के लिए टाइप करने के लिए पठनीय और आरामदायक है।

मैं सी में CamelCase का उपयोग ++, क्योंकि यह मेरी आँखों के लिए और अधिक नेत्रहीन मनभावन है और क्योंकि मैं सिर्फ यह करने के लिए इस्तेमाल किया। दूसरी तरफ, मैं सी में अंडरस्कोर और लोअरकेस फ़ंक्शन नामों का उपयोग करता हूं - यह मेरे लिए किस भाषा का उपयोग किया गया है यह अंतर करने का एक आसान तरीका बन गया है।

अन्य प्रोग्रामर सबसे निश्चित रूप से आप अन्य कारणों से दे देंगे - Temas वे के सदस्य रहे हैं जिनमें से सबसे अधिक या कम व्यक्तिपरक, उन्हें या देव के लिए सच हो जाएगा।

अन्य भाषाओं को देखें। सी # कैमलकेस का समर्थन करता है, जिसमें पहला पत्र पूंजीकृत है। पहला लोअरकेस छोड़ने से बेहतर क्यों है?

पीएचपी प्रोग्रामर कि Zend फ्रेमवर्क का उपयोग भी Zend नामकरण सम्मेलनों से परिचित हैं: http://framework.zend.com/manual/en/coding-standard.naming-conventions.html

Drupal एपीआई पीएचपी भी है - लेकिन अंडरस्कोर, छोटे अक्षरों और मॉड्यूल/विषय विशेष उपसर्गों का उपयोग करता है।

पुस्तकालय, चौखटे और यहां तक ​​कि पूरे भाषाओं नामकरण रिवाजों का है कि किसी कारण से उनके निर्माताओं द्वारा पसंद किया जाता है हो सकता है। यह आपको अपने सामान्य नामकरण सम्मेलन का उपयोग करके छोड़ने के लिए मजबूर नहीं करता है :)। तो, सब कुछ, मुझे लगता है कि आपके प्रश्न का उत्तर इस तरह के मूर्ख तरीके से रखा जा सकता है: सिर्फ इसलिए: डी। क्योंकि व्यक्तिगत प्रोग्रामर इसके साथ सहज महसूस करते हैं।

दूसरे प्रश्न का सवाल है: नहीं, मैं किसी भी परियोजना के लिए एक और अधिक किसी भी सम्मेलन उपयोग करने की अनुशंसा नहीं होता। चुनें कि आपके लिए सबसे अच्छा क्या है। एकमात्र ऐसी स्थिति जहां आपके पास कोई विकल्प नहीं है जब आप एक देव टीम में हैं कि किसी कारण से एक ही सम्मेलन (जैसे एक सतत एपीआई) तक रहना चाहता है।

तीसरा प्रश्न: हाँ, आप इसे इस तरह देख सकते हैं। मैं आमतौर पर अपनी कक्षाओं को उपसर्ग करता हूं इसलिए यह बहुत स्पष्ट है कि UmbraModule या TCODConsole उम्बरा या libtcod API का हिस्सा हैं। एसटीएल के लिए, मैं इसे नाम नहीं देना पसंद करता हूं। std::* के साथ सब कुछ लगाकर चाहे वह या नहीं एक अलग पुस्तकालय का हिस्सा है की एक बहुत ही स्पष्ट संकेत है, इस प्रकार के बुनियादी ढांचे/आवेदन कोड स्पष्ट रूप से प्रतिष्ठित है - छोड़ने केमलकेस बनाम एक माध्यमिक बात :) रेखांकित।

+1

अग्रणी कैप संस्करण को कभी-कभी कैमेलकेस से अलग करने के लिए स्टूडलीप्स कहा जाता है। –

+0

ओह, धन्यवाद, मुझे वह नहीं पता था! – mingos

+0

thisIsCalledCamelCase, जबकि यह IsCalledPascalCase। http://www.dofactory.com/topic/1141/camelcase-pascalcase-vs-camelcase-pascalcase.aspx – Kaiserludi

संबंधित मुद्दे