कॉन्स्टेंस के लिए नामकरण सम्मेलनों जाओ


117

मैं यह निर्धारित करने की कोशिश कर रहा हूं कि constगोलंग के नामों के लिए एक नामकरण सम्मेलन है या नहीं ।

मैं व्यक्तिगत रूप से सी शैली का पालन करना और उन्हें ऊपरी मामले में लिखना चाहूंगा, लेकिन मुझे इस पृष्ठ पर कुछ भी नहीं मिला है http://golang.org/doc/effective_go.html जो भाषा के लिए कुछ नामकरण सम्मेलनों की सूची देता है।


5
मैं FOO_BAR_BAZपठनीयता के लिए शैली में स्थिरांक लिखना पसंद करूंगा , लेकिन दुर्भाग्य से यह निरंतरता की दृश्यता को प्रभावित करता है और यह सामान्य नहीं है। मुझे सिर्फ अपना अभिमान झेलना पड़ा है और अगर मुझे यह पसंद नहीं है तो भी मैं इसे स्वीकार करता हूं।
बक्सर

जवाबों:


131

मानक पुस्तकालय ऊंट-मामले का उपयोग करता है, इसलिए मेरी सलाह है कि आप भी ऐसा ही करें। पहला पत्र अपरकेस या लोअरकेस है जो इस बात पर निर्भर करता है कि आप स्थिरांक निर्यात करना चाहते हैं या नहीं।

कुछ उदाहरण:

  • md5.BlockSize
  • os.O_RDONLY एक अपवाद है क्योंकि यह सीधे POSIX से उधार लिया गया था।
  • os.PathSeparator

7
यह निर्धारित करना भी महत्वपूर्ण है कि क्या आप चाहते हैं कि आपका constतत्व अन्य पैकेजों के संपर्क में आए। यदि आप उपयोग करते हैं UpperCamelCaseया ALL_CAPSआप इसे अपने पैकेज के बाहर निर्यात कर रहे हैं। इस कारण से, मैं lowerCamelCaseनिजी कॉन्स्टेबल चर के लिए छड़ी करता हूं , और मुझे याद है कि यह सिफारिश किसी को गो परियोजना के अपेक्षाकृत करीब से पढ़ना (या शायद आधिकारिक दस्तावेज में भी - मैं भूल जाता हूं कि कहां है)।
weberc2

81

जाओ कोड की समीक्षा टिप्पणियाँ

यह पृष्ठ गो कोड की समीक्षाओं के दौरान की गई सामान्य टिप्पणियों को एकत्र करता है, ताकि शॉर्टहैंड द्वारा एक विस्तृत विवरण को संदर्भित किया जा सके। यह सामान्य गलतियों की एक कपड़े धोने की सूची है, न कि स्टाइल गाइड।

आप इसे http://golang.org/doc/effective_go.html के पूरक के रूप में देख सकते हैं ।

मिश्रित कैप्स

Http://golang.org/doc/effective_go.html#mixed-caps देखें । यह तब भी लागू होता है जब यह अन्य भाषाओं में सम्मेलनों को तोड़ता है। उदाहरण के लिए एक अनएक्सपोर्टेड स्थिरांक मैक्सक्लेयर नहीं मैक्स लैंथ या MAX_LENGTH है।


प्रभावी जाओ

MixedCaps

अंत में, गो में अधिवेशन मल्टीवर्ड नामों को लिखने के लिए अंडरस्कोर के बजाय मिश्रितकैप्स या मिक्सकैप्स का उपयोग करना है।


गो प्रोग्रामिंग लैंग्वेज स्पेसिफिकेशन

निर्यात किए गए पहचानकर्ता

एक पहचानकर्ता को दूसरे पैकेज से उस तक पहुंच की अनुमति देने के लिए निर्यात किया जा सकता है। एक पहचानकर्ता निर्यात किया जाता है यदि दोनों:

  • पहचानकर्ता के नाम का पहला चरित्र एक यूनिकोड ऊपरी मामला पत्र (यूनिकोड वर्ग "लू") है; तथा

  • पहचानकर्ता को पैकेज ब्लॉक में घोषित किया गया है या यह एक फ़ील्ड नाम या विधि का नाम है।

अन्य सभी पहचानकर्ता निर्यात नहीं किए जाते हैं।


मिश्रित कैप का प्रयोग करें।


12

विशिष्ट उदाहरण। ध्यान दें कि निरंतर (जब प्रासंगिक) में प्रकार की घोषणा करना संकलक के लिए सहायक हो सकता है।

// Only visible to the local file
const localFileConstant string = "Constant Value with limited scope"

// Exportable constant
const GlobalConstant string = "Everyone can use this"
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.