खोज…


परिचय

यह विषय C # भाषा में लिखते समय उपयोग किए जाने वाले कुछ बुनियादी नामकरण सम्मेलनों की रूपरेखा तैयार करता है। सभी सम्मेलनों की तरह, वे संकलक द्वारा लागू नहीं किए जाते हैं, लेकिन डेवलपर्स के बीच पठनीयता सुनिश्चित करेंगे।

व्यापक .NET फ्रेमवर्क डिज़ाइन दिशानिर्देशों के लिए, docs.microsoft.com/dotnet/standard/design-guidelines देखें।

टिप्पणियों

आसानी से पढ़ने योग्य पहचानकर्ता नाम चुनें

उदाहरण के लिए, क्षैतिज क्षैतिजता नामक एक संपत्ति अंग्रेजी में AlignmentHor क्षैतिज की तुलना में अधिक पठनीय है।

संक्षिप्तता पर अनुकूल पठनीयता

प्रॉपर्टी का नाम CanScrollHorizontally बेहतर है ScrollableX (X- अक्ष के लिए एक अस्पष्ट संदर्भ)।

अंडरस्कोर, हाइफ़न, या किसी अन्य गैर-अल्फ़ान्यूमेरिक वर्ण का उपयोग करने से बचें।

हंगेरियन नोटेशन का उपयोग करें

हंगेरियन नोटेशन में पैरामीटर के बारे में कुछ मेटाडेटा को एन्कोड करने के लिए पहचानकर्ताओं में एक उपसर्ग शामिल करने का अभ्यास है, जैसे कि पहचानकर्ता के डेटा प्रकार, जैसे string strName

इसके अलावा, उन पहचानकर्ताओं का उपयोग करने से बचें, जो पहले से ही C # के भीतर उपयोग किए जाने वाले कीवर्ड के साथ संघर्ष करते हैं।

संक्षिप्त एवं विपरितार्थक

सामान्य तौर पर, आपको संक्षिप्त या संक्षिप्त शब्दों का उपयोग नहीं करना चाहिए; ये आपके नाम को कम पठनीय बनाते हैं। इसी तरह, यह जानना मुश्किल है कि कब यह मान लेना सुरक्षित है कि एक संक्षिप्त रूप से व्यापक रूप से मान्यता प्राप्त है।

पूंजीकरण सम्मेलन

निम्नलिखित शब्द केस आइडेंटिफायर्स के विभिन्न तरीकों का वर्णन करते हैं।

पास्कल केसिंग

पहचानकर्ता में पहला अक्षर और उसके बाद के प्रत्येक शब्द का पहला अक्षर बड़े अक्षरों में लिखा होता है। आप पास्कल केस का उपयोग तीन या अधिक वर्णों के पहचानकर्ताओं के लिए कर सकते हैं। उदाहरण के लिए: BackColor

ऊंट कैसिंग

एक पहचानकर्ता का पहला अक्षर लोअरकेस होता है और प्रत्येक बाद के संक्षिप्त शब्द का पहला अक्षर कैपिटल होता है। उदाहरण के लिए: backColor

अपरकेस

पहचानकर्ता के सभी अक्षरों को बड़े अक्षरों में लिखा गया है। उदाहरण के लिए: IO


नियम

जब एक पहचानकर्ता में कई शब्द होते हैं, तो विभाजक, जैसे कि अंडरस्कोर ("_") या हाइफ़न ("-") शब्दों के बीच में उपयोग न करें। इसके बजाय, प्रत्येक शब्द की शुरुआत को इंगित करने के लिए आवरण का उपयोग करें।

निम्न तालिका पहचानकर्ताओं के लिए पूंजीकरण नियमों को सारांशित करती है और विभिन्न प्रकार के पहचानकर्ताओं के लिए उदाहरण प्रदान करती है:

पहचानकर्ता मामला उदाहरण
स्थानीय चर ऊंट carName
कक्षा पास्कल AppDomain
गणना प्रकार पास्कल eRRORLEVEL
गणना के मान पास्कल घातक गलती
प्रतिस्पर्धा पास्कल ValueChanged
अपवाद वर्ग पास्कल WebException
केवल-स्थिर क्षेत्र पढ़ें पास्कल RedValue
इंटरफेस पास्कल IDisposable
तरीका पास्कल तार
नाम स्थान पास्कल System.Drawing
पैरामीटर ऊंट नाम लिखो
संपत्ति पास्कल पीछे का रंग

अधिक जानकारी MSDN पर पाई जा सकती है।

इंटरफेस

संज्ञाओं या संज्ञा वाक्यांशों के साथ इंटरफेस का नाम दिया जाना चाहिए, या विशेषण जो व्यवहार का वर्णन करते हैं। उदाहरण के लिए IComponent एक वर्णनात्मक संज्ञा का उपयोग करता है, ICustomAttributeProvider एक संज्ञा वाक्यांश का उपयोग करता है और IPersistable एक विशेषण का उपयोग करता है।

इंटरफ़ेस के नाम I अक्षर के साथ उपसर्ग किए जाने चाहिए, यह इंगित करने के लिए कि प्रकार एक इंटरफ़ेस है, और पास्कल केस का उपयोग किया जाना चाहिए।

नीचे सही ढंग से नामित इंटरफेस दिए गए हैं:

public interface IServiceProvider
public interface IFormatable

निजी क्षेत्र

निजी क्षेत्रों के लिए दो सामान्य सम्मेलन हैं: camelCase और _camelCaseWithLeadingUnderscore

टेढ़े मेढ़े संयुक्त शब्द

public class Rational
{
    private readonly int numerator;
    private readonly int denominator;

    public Rational(int numerator, int denominator)
    {
        // "this" keyword is required to refer to the class-scope field
        this.numerator = numerator;
        this.denominator = denominator;
    }
}

अंडरस्कोर के साथ ऊंट का मामला

public class Rational
{
    private readonly int _numerator;
    private readonly int _denominator;

    public Rational(int numerator, int denominator)
    {
        // Names are unique, so "this" keyword is not required
        _numerator = numerator;
        _denominator = denominator;
    }
}

नेमस्पेस

नामस्थान का सामान्य प्रारूप है:

<Company>.(<Product>|<Technology>)[.<Feature>][.<Subnamespace>].

उदाहरणों में शामिल:

Fabrikam.Math
Litware.Security

किसी कंपनी के नाम के साथ नामस्थानों को जोड़ना अलग-अलग कंपनियों के नामस्थानों को एक ही नाम रखने से रोकता है।

enums

अधिकांश Enums के लिए एक विलक्षण नाम का उपयोग करें

public enum Volume
{
   Low,
   Medium,
   High
}

Enum प्रकार के लिए एक बहुवचन नाम का उपयोग करें जो बिट फ़ील्ड हैं

[Flags]
public enum MyColors
{
    Yellow = 1,
    Green = 2,
    Red = 4,
    Blue = 8
}

नोट: हमेशा FlagsAttribute को थोड़ा फ़ील्ड Enum टाइप करें।

प्रत्यय के रूप में 'एनम' जोड़ें

public enum VolumeEnum // Incorrect

प्रत्येक प्रविष्टि में एनम नाम का उपयोग करें

public enum Color
{
    ColorBlue, // Remove Color, unnecessary
    ColorGreen,
}

अपवाद

प्रत्यय के रूप में 'अपवाद' जोड़ें

कस्टम अपवाद नाम "-Exception" के साथ प्रत्यय होना चाहिए।

नीचे अपवादों का सही नाम दिया गया है:

public class MyCustomException : Exception
public class FooException : Exception


Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow