लघु, बेहतर और सही उत्तर
यह विचार कि अच्छी तरह से लिखा गया है, "स्व-दस्तावेज कोड" आप सभी की जरूरत है एक विरोधी पैटर्न है और मरना चाहिए, तब भी जब यह टिप्पणियों के लिए अपवाद बनाता है जो "क्यों" समझाते हैं। यह एक मिथक है कि आप हमेशा किसी भी प्रोग्रामर को देखने और इसे प्राप्त करने के लिए किसी भी एल्गोरिदम के लिए पर्याप्त रूप से स्पष्ट सभी कोड लिख सकते हैं (या इसके लिए आपके पास रिफैक्टरिंग या संगठनात्मक समय की आवश्यकता नहीं होगी)। इससे भी महत्वपूर्ण बात, अधिक बार नहीं, प्रोग्रामर जो सोचते हैं कि वे स्पष्ट कोड लिखते हैं, नहीं।
टिप्पणियों की तुलना में बहुत बेहतर उत्तर का उपयोग केवल यह बताने के लिए किया जाना चाहिए कि "क्यों" वह टिप्पणी है:
- "क्यों" (निश्चित रूप से) की व्याख्या करें
- अलग-अलग लाइनों पर "क्या" केवल तभी समझाएं जब कोड जटिल हो या उद्देश्य अस्पष्ट हो और यह आगे सरलीकृत करने के लायक नहीं हो सकता है या नहीं हो सकता है
- समझ को बढ़ाने के लिए कोड के ब्लॉक के लिए "क्या" समझाएं और आपको क्या चाहिए
यह वापस करने के लिए स्पष्टीकरण
लोग गलत तरीके से सोचते हैं कि लोग केवल टिप्पणियों का उपयोग करते हैं, यह समझाने के लिए कि कोड की एक पंक्ति का क्या अर्थ है। सच टिप्पणी कोड का एक बड़ा उद्देश्य यह जल्दी बनाने के लिए हैअपने कोड के माध्यम से देखने के लिए और आप जो खोज रहे हैं उसे पाएं। जब मैं बाद में कोड करने के लिए वापस आता हूं या किसी और के कोड को पढ़ता हूं, तो निश्चित रूप से, मैं अच्छी तरह से लिखे गए कोड के एक खंड को पढ़ और समझ सकता हूं - लेकिन शीर्ष पर टिप्पणी को पढ़ने के लिए यह तेज़ और आसान नहीं है कि कोड का वह भाग क्या करता है। इसे पूरी तरह से छोड़ दें यदि यह नहीं है तो मैं क्या देख रहा हूँ? वहां क्यों बैठें और कोड का पता लगाएं, भले ही यह अच्छी तरह से लिखा गया हो, अगर आप एक जोड़े की टिप्पणियों पर नज़र डाल सकते हैं और एक पूरे समारोह को समझ सकते हैं? इसलिए हम फ़ंक्शन के लिए वर्णनात्मक नामों का उपयोग करते हैं - कोई भी नहीं कहता है कि मुझे अपने फ़ंक्शन के लिए वर्णनात्मक नाम का उपयोग करने की आवश्यकता नहीं है क्योंकि कोई व्यक्ति केवल मेरे साफ लिखे गए कोड के माध्यम से देख सकता है कि वह क्या करता है।
उदाहरण के लिए, अगर मैं किसी और के फ़ंक्शन को देख रहा हूं, तो क्या यह कोड के माध्यम से लाइन से लाइन पर जाना आसान है, यह देखने के लिए कि फ़ंक्शन क्या कर रहा है या फ़ंक्शन में तीन अच्छी तरह से लिखी गई टिप्पणियों को देखने के लिए कि फ़ंक्शन क्या कर रहा है और कहां है यह कर रहा है?
आपके कोड को टिप्पणी करने के लिए फ़ंक्शंस का एक और विरोधी पैटर्न अत्यधिक उपयोग है। अच्छी तरह से नामित कार्य कोड प्रलेखन का एक महत्वपूर्ण हिस्सा हैं, लेकिन कभी-कभी प्रोग्रामर कोड की 2-3 पंक्तियों को अलग करते हैं जो कभी भी प्रलेखन उद्देश्यों के लिए एक समारोह में कहीं और उपयोग नहीं किया जाएगा। टिप्पणियों का अत्यधिक उपयोग करने से बेहतर कार्य क्यों हो रहा है? GOTO कथनों को गले लगाने के समान कार्य का उपयोग करना - यह स्पेगेटी कोड बनाता है जो पालन करने के लिए दर्द हो सकता है।
अनिवार्य रूप से, जब आप एक उद्यम वातावरण में काम करते हैं, जहां लोग लगातार कोड साझा कर रहे हैं और लोगों के पास हमेशा अपने कोड को सही बनाने के लिए समय नहीं होता है, तो कुछ अच्छी टिप्पणियां टन और समय की हताशा को बचा सकती हैं। और याद रखें, जबकि आप एक गुरु हो सकते हैं जो प्रकाश गति से कोड के माध्यम से पढ़ सकते हैं, आपके कार्यालय में हर कोई शायद नहीं है।