2009-08-07 11 views
5

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

+0

सभी उत्तरों के लिए धन्यवाद। निश्चित रूप से जब बहु और गुणा करना चुनते हैं तो मैं गुणा करना पसंद करता हूं, लेकिन इसके लिए * है। बस * की बजाय गुणा करें। प्रत्येक गणित सूत्र एक दुःस्वप्न होगा। मैं उन मामलों के बारे में बात कर रहा हूं जहां लंबे और वर्णनात्मक नाम और छोटे और काम करने में आसान के बीच चुनाव स्पष्ट नहीं है। जैसे वित्त जैसे कुछ डोमेन। यदि आप डोमेन नहीं जानते हैं, तो आपको लंबे नामों की आवश्यकता है, अगर आपको पता है - आप कम उपयोग कर सकते हैं। मैं यह भी नहीं चाहता कि यह नामकरण की तरह हो, मैं इसे एक और विचार की तरह सोचता हूं। वीएस में कक्षाओं के लिए यूएमएल व्यू की तरह, ऑब्जेक्ट एक्सप्लोरर और सॉल्यूशन एक्सप्लोरर की तरह। –

उत्तर

6

मैं लंबे समय से नाम के बारे में कभी नहीं चिंता। यदि कोई विधि नाम बहुत लंबा हो जाता है, तो यह भी संकेत दे सकता है कि विधि बहुत अधिक है (जब तक कि यह वास्तव में एक लंबा शब्द शामिल न हो)। दूसरी तरफ, मैं खुद को दोहराने से बचने की कोशिश करता हूं। उदाहरण के लिए मेरे पास Account.AccountId नहीं होगा, बल्कि Account.Id होगा। मैं नामस्थान पर भी दुबला हूं; यदि नेमस्पेस स्पष्ट है कि मैं किस डोमेन में हूं, तो मैं आमतौर पर वर्ग- या सदस्य नामों में दोहराने की कोशिश नहीं करता हूं।

नीचे पंक्ति; मैं खुद को ऐसे ऐडिन का उपयोग नहीं कर सकता।

8

एक परिवर्तनीय नाम तब तक पहचानने योग्य होना चाहिए जब तक इसे पहचानने योग्य न हो, क्या इससे कोई फर्क नहीं पड़ता कि यह आपकी पसंद से थोड़ा अधिक लंबा है? जब तक कोड पठनीय और समझ में आता है, निश्चित रूप से इससे कोई फर्क नहीं पड़ता?

उन नामों के लिए टिप्पणियों का उपयोग करें जो एक चर/वर्ग नाम के रूप में उपयोग करने के लिए बहुत लंबे समय तक उपयोग करेंगे। यह बहुत अधिक उपयुक्त होगा।

एक विधि नाम बहुत लंबा है, तो यह एक भी विधि होना चाहिए ...

मुझे लगता है कि जैसे एक ऐड का उपयोग नहीं होता।

4

इस addin के बिना अन्य प्रोग्रामर खुद को परेशानी में पाएंगे क्योंकि यदि आप बहुत छोटे नाम देते हैं तो वे कोड को पूरी तरह से समझ नहीं पाएंगे, अगर आप लंबे नाम देते हैं तो वे समय पढ़ने और अंततः गुस्सा हो जाएंगे क्योंकि लंबे नाम याद रखना मुश्किल है : पी

किसी को लिखने वाले सभी चीज़ों के लिए सबसे अच्छा नाम ढूंढना है, इम्हो को पहचानकर्ताओं के लिए वर्बोजिटी चालू करने और बंद करने के लिए स्विच की आवश्यकता नहीं है।

मैं उस एडिन का उपयोग नहीं करता।

0

मुझे नहीं लगता कि मैं इसे चाहता हूं।

विभिन्न विचारों के बीच स्विच करने का ओवरहेड एफ 12 को मारने और फ़ंक्शन के लिए टिप्पणी पढ़ने के रूप में उतना ही अधिक काम करेगा, जो लंबे नाम से हमेशा अधिक वर्णनात्मक होगा।

9

विज़ुअल स्टूडियो में निर्मित मानक XML टिप्पणी प्रणाली का उपयोग क्यों न करें। यदि आप कक्षा/विधि/चर आदि के ऊपर /// टाइप करते हैं, तो यह टिप्पणी स्टब बनाता है। ये टिप्पणियां अतिरिक्त जानकारी के साथ इंटेलिजेंस/कोड पूर्ण होने के माध्यम से पॉपअप करती हैं।

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

देखें: http://msdn.microsoft.com/en-us/magazine/cc302121.aspx

+1

या '' 'vb.net – Pondidum

0

मैं नहीं चाहता।

कुछ फ़ंक्शन में लंबे फ़ंक्शन नाम आसान हो सकते हैं। यदि आपके पास कोई विशेष मामला या कुछ है। कुछ उदाहरण:

गुणा, मूल या गुणा करने के लिए आप क्या पसंद करेंगे? गुणा मेरी पसंद

functionnames का चयन का उपयोग कर, अगर आप बहुत छोटा नाम है के लिए अपने कोड भी स्पष्ट कर दिया की बात है और आप को पता है समारोह क्या करता है टिप्पणी को पढ़ने के लिए है, तो आप कर यह गलत

1

न ही I. तथ्य यह है कि आप विजुअलस्टूडियो के बारे में बात कर रहे हैं। IntelliSense के साथ अधिकांश चर नामों (लंबी और छोटी) को याद रखने में भारी भार होता है। जैसे ही पावर ने कहा, जब तक कोड पठनीय और समझा जा सके, यह सब कुछ मायने रखता है।

0

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

0

आईडी को छोटे नाम हैं जो पढ़ने में आसान हैं।

यह अक्सर शब्दों में एक विरोधाभास है।

उदाहरण के लिए oScBf जैसे नाम लें, यदि आप पहले से ही नहीं जानते हैं कि यह व्यावहारिक रूप से अपठनीय है। क्या यह आउटपुटस्क्रीनबफर है, ऑनलाइन सोर्सबिटफ्लैग, ओपनस्केनर ब्रोसेफाइल, आउटडोर स्पेशलबाइकिनिफाइट्स ...?

लंबे पहचानकर्ता नाम आम तौर पर पसंद करते हैं। घटनाक्रम यह पढ़ने के लिए और अधिक है, यह अभी भी समझना आसान है।

पढ़ना कोड पाठ पढ़ने के समान कुछ तरीकों से है। यदि आप बहुत अधिक abbrev जोड़ने शुरू करते हैं, तो आप इसे पढ़ने के लिए आसान होने के लिए एक निश्चित पैटर्न का पालन करने की उम्मीद करते हैं। और दा पाठ में गैर-std शब्द u hav 2 stop n सोचें कि इसका क्या अर्थ है, और आप दा प्रवाह खो देते हैं। :)

+0

में मैं आपसे सहमत हूं। लेकिन अगर आपके पास केवल एक चीज है जिसे आपको कम करने की जरूरत है। इसके लिए एक पूर्ण नाम लिखना हमेशा बेहतर होता है और सब कुछ आपके पाठक को स्पष्ट हो रहा है। लेकिन क्या होगा यदि आपके पास कुछ जटिल तर्क है जहां आप नहीं जानते कि आपके भविष्य के पाठक को यह समझने के लिए चर का नाम कैसे दिया जा रहा है? लंबे नाम सभी चीजों को समझाने में अच्छे हैं, लेकिन कुछ वैरिएबल के बाद आप इसे कम करना चाहते हैं और दूसरों के बारे में पढ़ना चाहते हैं। यदि वहां 10 वैरिएबल हैं जो आप उनके बारे में पढ़ेंगे और स्वयं को अल्गोरिदम प्राप्त करने के लिए कम करने की आवश्यकता होगी। –

-2

मुझे यह विचार पसंद है। यह वास्तव में अच्छा है और मैं आपको बधाई देता हूं और उम्मीद करता हूं कि आप इसे विकसित करने में सफल हैं। हालांकि मैं कभी भी इस तरह के ऐड-ऑन का उपयोग नहीं करता।

+0

कहने का मजेदार तरीका आपको वास्तव में यह पसंद नहीं है – raven

+0

असल में, मुझे विचार पसंद है। कारण मैं इसका उपयोग नहीं करूँगा क्योंकि मैं चीजों को एक निश्चित तरीके से लिखने के आदी हो गया हूं, और यदि मैंने इसका उपयोग करना शुरू किया - मैं भूलना जारी रखता हूं, और जो लिखता हूं वह लिखता रहता हूं ... विचार बहुत अच्छा है। मुझे लगता है कि यह बहुत समय बचाएगा, और चीजों को याद रखना आसान बना देगा। लेकिन यह सिर्फ मेरे लिए नहीं है। मुझे निश्चित रूप से नहीं लगता कि मेरी व्यक्तिगत राय 2 वोट-डाउन दिमागी है ... –

0

यह एक बुरा विचार है। परिवर्तनीय नामों को आम तौर पर पर्याप्त वर्णनात्मक होने की आवश्यकता नहीं होती है, आप हर नाम के दो संस्करणों को लिखने में काफी समय बर्बाद कर देंगे, और कई प्रोग्रामर शायद इसे एक ही चीज़ के लिए कई नाम रखने में उलझन में पाएंगे।

एक्सएमएलडोक और इंटेलिजेंस सहायता के साथ, आप कोड तत्व को पूरी तरह से वर्णन करने के लिए आवश्यक अतिरिक्त विवरण जोड़ सकते हैं - नाम को मिनीटिया का वर्णन करने की आवश्यकता नहीं है, केवल कोड तत्व का उद्देश्य क्या है इसका एक स्पष्ट और विशिष्ट विचार दें।

नाम स्वत: पूर्णता आसानी से उपलब्ध होने के साथ, लंबे नामों की शिकायत करने का कोई कारण नहीं है, जिसमें बहुत सारे टाइपिंग की आवश्यकता होती है।

इसके अलावा, अच्छी कोडिंग शैली कोड को पढ़ने, समझने और बनाए रखने के लिए आसान है, छोटे कोड में अधिक कोड पैक करने के बारे में नहीं।

OO डिजाइन) वर्ग/विधि स्तर पर इस तरह के लंबे नाम के लिए की जरूरत

अंत में, यदि आप वास्तव में नाम छोटे चाहिए, सबसे अधिक भाषाओं सबसे अधिक भाषाओं प्रदान को कम करने नामस्थान और वर्गों में पदानुक्रम नीचे कार्यक्षमता को तोड़ने के लिए मदद करनी चाहिए, नामस्थानों को बंद करने और/या नामों के लिए प्रतिस्पर्धात्मक नए उपनाम जोड़ने के आसान तरीके (उदाहरण के लिएC++ में 'टाइपपीफ' और 'उपयोग', सी # में 'उपयोग'), इसलिए एक स्थानीय क्षेत्र में आप आसानी से एक छोटे से संस्करण या उपनाम के माध्यम से लंबे नाम का उल्लेख कर सकते हैं यदि आप चाहें।

1
ReSharper 4 और इसके बाद के संस्करण के साथ

, आप प्रकार और चर नाम का स्वचालित विस्तार प्राप्त कर सकते हैं कि ऊंट हैं या पास्कल मामलों:

link text http://www.jetbrains.com/resharper/features/screenshots/40/assistance_completion_camelhumps.png

तो तुम कह सकते हैं अपने चर myExtremelyLongAndDescriptiveVariableName लेकिन फिर बस का उपयोग करने के टाइप mELADVN यह।

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