2011-02-15 22 views
7

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

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

ये stackoverflow सवाल है, तो यह है कि चारों ओर जैसे पुराने कोड छोड़ने एक अच्छा विचार है या नहीं के सवाल के साथ सौदा:

लेकिन, मेरा सवाल यह है: वहाँ बात की इस तरह, या एक "विरोधी पैटर्न नाम" के लिए एक शब्द है मैं जब इसके बारे में अपने सहयोगियों से बात कर बोली कर सकते हैं?

+0

प्रश्न http://stackoverflow.com/questions/758279/checking-in-of-commented-out-code – tawman

उत्तर

3

"लिटर।"

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

+0

+1 हाँ यह एक अच्छा है, धन्यवाद! –

1

मैंने इसे "अक्षम्य पाप" के रूप में संदर्भित किया है लेकिन मुझे कोई औपचारिक नाम नहीं है जिसे मैं जानता हूं।

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

+1

पर बहुत अच्छी तरह से कवर किया गया है, मुझे इसके लिए औपचारिक नाम नहीं पता है, आश्चर्य की बात है कि ऐसा होता है मेरे अनुभव में बहुत कुछ। लोग इन चीजों को क्यों करते हैं! –

+0

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

1

Wikipedia records this anti-pattern under the name Boat Anchor। हालांकि मैं यह नहीं कह सकता कि मैं कभी भी उस उपयोग में आया था इससे पहले कि मैं इसके लिए गुम हो गया।

+0

सच है कि मैं उस शब्द में भी आया, हालांकि मैंने खोज से पहले कभी इसके बारे में कभी नहीं सुना होगा! लेकिन हां यह उस कोड को संदर्भित करता है जिसे अब कॉल नहीं किया जाता है (लेकिन सिद्धांत रूप में कहा जा सकता है, और यह भी काम कर सकता है), जैसा कोड पर विरोध किया गया है (जैसा कि कोड में एक बग या कुछ था)। –

+2

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

2

Anti Patterns book इसे Lava Flow antipattern कहते हैं, जिसमें पुराना, अप्रयुक्त कोड कोड आधार में रहता है, चाहे वह टिप्पणी की हो या नहीं।

+1

सच है, लेकिन मुझे लगता है कि कोड के बीच एक अंतर है जो अभी भी कॉल करने योग्य हो सकता है (भले ही यह नहीं है) और यहां तक ​​कि काम भी कर सकता है, और कोड जो गलत होने के लिए जाना जाता है और इस प्रकार प्रतिस्थापित किया गया है (और, इस विरोधी पैटर्न में, है अभी भी स्रोत में शामिल है, टिप्पणी की।) –

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