क्या आप एक निजी चर के रूप में एक ही सम्मेलन का उपयोग कर फ़ॉर्म पर नियंत्रण का नाम देते हैं?

किसी कारण से मैंने इसे कभी नहीं देखा। क्या कोई कारण नहीं है? उदाहरण के लिए मुझे निजी चर के लिए _blah पसंद है, और कम से कम विंडोज़ फॉर्म नियंत्रण में डिफ़ॉल्ट निजी सदस्य चर हैं, लेकिन मुझे कभी भी उन्हें इस तरह नामित नहीं याद किया जा सकता है। यदि मैं किसी सदस्य फ़ंक्शन के भीतर स्थानीय चर में नियंत्रण ऑब्जेक्ट्स बना रहा/संग्रहीत कर रहा हूं, तो यह विशेष रूप से कुछ दृश्य भेदभाव के लिए उपयोगी है।

0
ro fr bn

11 उत्तर

हंगेरियन नोटेशन या नहीं, अगर लोग एम_ या _ या मानक निजी सदस्य चर के लिए जो कुछ भी उपयोग करते हैं, तो मैं अधिक उत्सुक हूं।

0
जोड़ा

मैं अपरकेस/लोअरकेस शिविर में हूं ("शीर्षक" निजी है, "शीर्षक" सार्वजनिक है), यूआई घटक (टीबीटीक्स्टबॉक्स, एलबीएलएलएबल इत्यादि) के लिए "हंगेरी" नोटेशन के साथ मिश्रित है, और मुझे खुशी है कि हमारे पास नहीं है टीम में विजुअल केस-असंवेदनशील-मूल डेवलपर्स :-)

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

0
जोड़ा

मैं सदस्य चर के लिए m_ का उपयोग करता हूं, लेकिन मैं विधि पैरामीटर और स्थानीय चर के लिए करते हैं जैसे मैं LowCamelCase का उपयोग करने के लिए तेजी से प्रलोभन कर रहा हूं। सार्वजनिक सामान UpperCamelCase में है।

ऐसा लगता है कि .NET समुदाय में कम या ज्यादा स्वीकार्य सम्मेलन है।

0
जोड़ा

यह कुछ के लिए प्रतिद्वंद्वी हो सकता है, लेकिन हम यूआई तत्वों के लिए डरावनी हंगेरियन नोटेशन का उपयोग करते हैं।

तर्क सरल है: किसी दिए गए डेटा ऑब्जेक्ट के लिए आपके पास दो या दो से अधिक नियंत्रण हो सकते हैं। उदाहरण के लिए, आपके पास एक नियंत्रण है जो टेक्स्ट बॉक्स पर जन्मतिथि इंगित करता है, आपके पास होगा:

  • टेक्स्ट बॉक्स
  • एक लेबल इंगित करता है कि टेक्स्ट बॉक्स जन्म तिथियों के लिए है
  • एक कैलेंडर नियंत्रण जो आपको दिनांक चुनने की अनुमति देगा

इसके लिए, मेरे पास लेबल के लिए lblbirthDate होगा, टेक्स्ट बॉक्स के लिए txtbirthDate, और कैलेंडर नियंत्रण के लिए calbirthDate होगा।

मुझे यह सुनने में दिलचस्पी है कि अन्य लोग ऐसा कैसे करते हैं। :)

0
जोड़ा

हंगेरियन नोटेशन या नहीं, मैं और अधिक हूं   उत्सुक अगर लोग m_ या _ या पूर्ववत करते हैं   वे जो भी मानक निजी के लिए उपयोग करते हैं   सदस्य चर।

ल्यूक,

मैं अपनी कक्षा पुस्तकालय वस्तुओं के लिए _ उपसर्ग का उपयोग करता हूं। मैंने यूआई के लिए विशेष रूप से हंगरी नोटेशन का उपयोग किया, क्योंकि मैंने कहा था।

0
जोड़ा

मैं नहीं करता, लेकिन मैं आपके तर्क की सराहना करता हूं। मुझे लगता है कि ज्यादातर लोग ऐसा नहीं करते हैं कि अंडरस्कोर डिज़ाइन समय पर प्रॉपर्टी विंडो में बदसूरत दिखेंगे। यह क्षैतिज स्थान का एक अतिरिक्त चरित्र भी लेगा, जो उस तरह की एक डॉक विंडो में प्रीमियम पर है।

0
जोड़ा

मैं अपने परिवर्तनीय नामों में अंडरस्कोर का कभी भी उपयोग नहीं करता हूं। मैंने पाया है कि अल्फा (कभी-कभी अल्फान्यूमेरिक) वर्णों के अलावा कुछ भी भाषा द्वारा मांगे जाने तक अत्यधिक है।

0
जोड़ा

मैं व्यक्तिगत रूप से निजी वस्तुओं को _ के साथ उपसर्ग करता हूं

प्रपत्र नियंत्रण हमेशा प्रकार के साथ prefixed होते हैं, केवल कारण मैं ऐसा करता हूं क्योंकि यह इंटेलिजेंस की वजह से है। बड़े रूपों के साथ lbl टाइप करके और इसे सूची से चुनकर "लेबल्स मान प्राप्त करना" आसान हो जाता है ^ _ ^ यह भी जॉन लिंजाप द्वारा तर्क तर्क

Although this does go again Microsofts .NET Coding Guidelines, check them out here.

0
जोड़ा

मैं उनके द्वारा प्रतिनिधित्व किए गए डेटाबेस कॉलम का नाम लिखता हूं।

0
जोड़ा

मैं वीबी के माध्यम से आया और नियंत्रण के लिए नियंत्रण प्रकार उपसर्ग पर आयोजित किया है। मेरे निजी सदस्य निचले-ऊंट मामले (प्रथम लेटर लोवरकेस) का उपयोग करते हैं जबकि सार्वजनिक सदस्य पास्कल/ऊपरी-ऊंट केस (फर्स्ट लेटर अपरकेस) का उपयोग करते हैं।

यदि बहुत से पहचानकर्ता/सदस्य/स्थानीय लोग हैं जिन्हें इसे याद रखने/अनुमान लगाने का 9 0% मौका है, तो शायद अधिक अमूर्तता आवश्यक है।

मुझे कभी आश्वस्त नहीं हुआ है कि भंडारण प्रकार उपसर्ग उपयोगी और/या आवश्यक है। हालांकि, मैं जो भी कोड उपयोग कर रहा हूं उसकी शैली का पालन करने की एक मजबूत आदत है।

0
जोड़ा

मेरे लिए, निजी सदस्यों को अंडरस्कोर तैयार करने के नामकरण सम्मेलन के साथ बड़ी जीत इंटेलिसेंस के साथ करना है। चूंकि अंडरस्कोर वर्णमाला में किसी भी अक्षर से पहले है, जब मैं इंटेलिसेंस लाने के लिए एक ctrl-space करता हूं, तो मेरे सभी _ निजी सदस्य हैं, ठीक ऊपर।

नियंत्रण, हालांकि, एक अलग कहानी है, जहां तक ​​नामकरण जाता है। मुझे लगता है कि गुंजाइश माना जाता है, और प्रकार को इंगित करने के लिए कुछ अक्षरों को तैयार करना (उदाहरण के लिए txtMyGroovyTextbox) उसी कारण से अधिक समझ में आता है; नियंत्रण प्रकार से इंटेलिसेंस में समूहित होते हैं।

लेकिन काम पर, यह वीबी सभी तरह से है, और हम mPrivateMember करते हैं। मुझे लगता है कि एम मॉड्यूल के लिए खड़ा हो सकता है।

0
जोड़ा