comments for क्या आप अपने कोड में बग फिक्स पर विशेष टिप्पणी का उपयोग करते हैं?




fb comments for boy (17)

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

अन्यथा, चेकइन पर आपके द्वारा दर्ज किए जाने वाले संदेश में आपकी ज़रूरत की सभी जानकारी नहीं होनी चाहिए।

चियर्स,

लूटना

मेरे कुछ सहयोगी अपने बग फिक्स पर विशेष टिप्पणी का उपयोग करते हैं, उदाहरण के लिए:

// 2008-09-23 John Doe - bug 12345
// <short description>

इसका कोई मतलब भी है क्या?
क्या आप किसी विशेष तरीके से बग फिक्स को टिप्पणी करते हैं?

कृपया मुझे बताओ।


Answer #1

जब भी मैं काम पर कोड के अंदर कीड़े के बारे में कुछ टिप्पणियां देखता हूं, तो मेरी निजी वरीयता कोड को एक बग को जोड़ती है। जब मैं कहता हूं कि मैं वास्तव में एक बग का मतलब है बाद में आप हमेशा किए गए परिवर्तनों को देख सकते हैं और पता कर सकते हैं कि ये किस बग में लागू किए गए थे।


Answer #2

नहीं, मैं नहीं, और मुझे उस कूड़े की कोड की तरह भित्तिचित्रों से नफरत है। बग संख्याओं को वर्ज़न कंट्रोल सिस्टम के लिए प्रतिबद्ध संदेश में और स्क्रिप्ट द्वारा बग ट्रैकिंग सिस्टम में प्रासंगिक प्रतिबद्ध संदेशों को पुश करने के लिए ट्रैक किया जा सकता है। मुझे नहीं लगता है कि वे स्रोत कोड में हैं, जहां भविष्य के संपादन केवल चीजों को भ्रमित करेंगे।


Answer #3

मैं वास्तविक स्रोत पर टिप्पणी नहीं करता क्योंकि यह आज तक जारी रखना मुश्किल हो सकता है। हालांकि मैंने अपने स्रोत नियंत्रण लॉग और इश्यू ट्रैकर में टिप्पणियों को जोड़ दिया है। उदाहरण के लिए मैं ऐसा कुछ ऐसा कर सकता हूं:

[बग-आईडी] Xyz संवाद के साथ समस्या। एबीसी में साइज़िंग कोड को ले जाया गया और अब बाद में आरंभ करें

फिर मेरे अंक ट्रैकर में मैं ऐसा कुछ करूँगा:

चेंजलिस्ट 1234 में फिक्स्ड

एबीसी में साइज़िंग कोड को ले जाया गया और अब बाद में आरंभ करें

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


Answer #4

चूंकि मैं जितना संभव हो उतना टीडीडी करता हूँ (बाकी सभी सामाजिक आत्महत्या हैं, क्योंकि हर दूसरी विधि आपको अंतहीन काम करने के लिए मजबूर करेगी), मैं शायद ही बग ठीक कर सकता हूं।

ज्यादातर समय मैं कोड की तरह इस तरह की विशेष टिप्पणियां जोड़ता हूं:

// I KNOW this may look strange to you, but I have to use
// this special implementation here - if you don't understand that,
// maybe you are the wrong person for the job.

कठोर लगता है, लेकिन अधिकांश लोग "खुद को" डेवलपर्स कहते हैं, उनके पास कोई अन्य टिप्पणी नहीं है।


Answer #5

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

अपने कोड में मैं शायद ही कभी बग फिक्स टिप्पणी करता हूँ


Answer #6

मैंने इस तरह की टिप्पणियां नहीं डाली हैं, स्रोत नियंत्रण प्रणाली पहले से ही उस इतिहास को बनाए रखती है और मैं पहले से ही किसी फ़ाइल के इतिहास को लॉग करने में सक्षम हूं।

मैं टिप्पणियों में डाल दिया है जो वर्णन करता है कि कुछ गैर-स्पष्ट हालांकि किया जा रहा है। इसलिए यदि बग ठीक कोड को कम अनुमान लगाता है और स्पष्ट करता है, तो मैं क्यों समझाता हूँ


Answer #7

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

इसके बजाए:

// $ DATE $ NAME $ TICKET // अगले गरीब आत्मा को उपयोगी टिप्पणी

मैं यह करूँगा:

// अगले गरीब आत्मा को उपयोगी टिप्पणी


Answer #8

यदि कोड सही है, तो टिप्पणी बेकार है और कभी किसी को दिलचस्प नहीं है - बस शोर।

यदि बग का समाधान नहीं हुआ है, तो टिप्पणी गलत है। तो यह समझ में आता है :) तो बस ऐसी टिप्पणियों को छोड़ें अगर आपने वास्तव में बग को हल नहीं किया है


Answer #9

मैं बहु-व्यक्ति परियोजनाओं पर काम नहीं करता, लेकिन मैं कभी-कभी एक निश्चित बग के बारे में एक इकाई परीक्षण में टिप्पणी जोड़ता हूं

याद रखें, कीड़े जैसी कोई चीज नहीं है, बस अपर्याप्त परीक्षण।


Answer #10

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

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


Answer #11

मैं आमतौर पर अपना नाम, मेरा ई-मेल पता और तारीख को जो मैंने बदल दिया है, उसके संक्षिप्त विवरण के साथ जोड़ता हूं, क्योंकि सलाहकार के रूप में मैं अक्सर अन्य लोगों के कोड को ठीक करता हूं।

// Glenn F. Henriksen (<[email protected]) - 2008-09-23
// <Short description>

इस तरह कोड मालिकों, या मेरे पीछे आने वाले लोग, पता कर सकते हैं कि क्या हुआ और वे मेरे साथ संपर्क में रह सकते हैं यदि उन्हें करना है

(हाँ, दुर्भाग्यवश, अधिकतर अक्सर उनके पास कोई स्रोत नियंत्रण नहीं होता है ... आंतरिक सामान के लिए मैं टीएफएस ट्रैकिंग का उपयोग करता हूं)


Answer #12

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

// <date> [my name] - Bug xxxxx happens when the foo parameter is null, but
// some customers want the behavior.  Jump through some hoops to find a default value.

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


Answer #13

हालांकि यह समय पर एक अच्छा विचार की तरह लग सकता है, यह जल्दी से हाथ से बाहर हो जाता है इस तरह की जानकारी को बेहतर स्रोत नियंत्रण प्रणाली और बग ट्रैकर के अच्छे संयोजन का उपयोग करके बेहतर कैद किया जा सकता है। बेशक, अगर कुछ मुश्किल चल रहा है, स्थिति का वर्णन करने वाली टिप्पणी किसी भी स्थिति में सहायक होगी, लेकिन तिथि, नाम या बग संख्या नहीं।

कोड बेस जो मैं वर्तमान में काम पर काम कर रहा हूं, वह 20 साल की उम्र की तरह कुछ है और उन्होंने इस साल पहले जैसी बहुत सारी टिप्पणियां जोड़ दी हैं। सौभाग्य से, वे 90 के दशक के आखिर में सीवीएस के लिए सब कुछ बदलने के बाद कुछ साल बाद यह करना बंद कर दिया। हालांकि, इस तरह की टिप्पणियां अभी भी पूरे कोड में पड़ी हैं और अब नीति "उनको हटा दें यदि आप सीधे उस कोड पर काम कर रहे हैं, लेकिन अन्यथा उन्हें छोड़ दें"। वे अक्सर वास्तव में पालन करने के लिए कठिन हैं, खासकर अगर एक ही कोड जोड़ा और कई बार हटा दिया (हाँ, ऐसा होता है)। उनके पास तारीख भी शामिल नहीं है, लेकिन उस बग संख्या को शामिल करें, जिसकी तारीख को खोजने के लिए आपको एक पुरातन प्रणाली में देखना होगा, इसलिए कोई भी नहीं करता है।


Answer #14

बहु-डेवलपर वातावरण में टिप्पणी की वह शैली बेहद मूल्यवान है जहां डेवलपर्स के कई कौशल और / या व्यावसायिक ज्ञान मौजूद हैं (जैसे - हर जगह)।

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

ओह, और "मैं सिर्फ यह सोचा कि स्रोत नियंत्रण प्रणाली में" के बारे में अनुभव से एक टिप्पणी टिप्पणी करता है:

यदि यह स्रोत में नहीं है, तो ऐसा नहीं हुआ।

मैं स्रोत नियंत्रण सॉफ्टवेयर के साथ अनुभवहीन होने के कारण प्रोजेक्ट्स के स्रोत इतिहास की बार-बार गिनती नहीं कर सकता, अनुचित ब्रांचिंग मॉडल इत्यादि। केवल एक ही स्थान है जहां परिवर्तन इतिहास खोया नहीं जा सकता - और यह स्रोत फ़ाइल में है।

मैं आमतौर पर इसे वहां पहले रखता हूं, फिर जब मैं इसे चेक करता हूं तो उसी टिप्पणी को पेस्ट कर दें


Answer #15

समय के साथ ये एकत्रित हो सकते हैं और अव्यवस्था जोड़ सकते हैं। यह कोड साफ करने के लिए बेहतर है, संबंधित थोक के लिए कोई टिप्पणी जोड़ें, जो स्पष्ट नहीं हो और बग विवरण ट्रैकिंग सिस्टम और रिपॉजिटरी में रखें।


Answer #16

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