यह एक विरोधी पैटर्न नहीं है। विरोधी पैटर्न में कुछ संपत्ति होती है जो इसे एक अच्छे विचार की तरह प्रतीत होती है, जो लोगों को उद्देश्य से ऐसा करने के लिए प्रेरित करती है; उन्होंने पैटर्न के रूप में योजना बनाई है और फिर यह बहुत गलत हो जाता है।
यह भी बहस के लिए बनाता है कि क्या कुछ एक पैटर्न है, एक विरोधी पैटर्न है, या एक गलत तरीके से लागू पैटर्न है जो अभी भी कुछ स्थानों पर उपयोग करता है।
यह सिर्फ गलत है।
थोड़ा और जोड़ना है।
यह कोड अंधविश्वास है, या सबसे अच्छा कार्गो-पंथ अभ्यास है।
एक अंधविश्वास एक स्पष्ट औचित्य के बिना किया जाता है। यह कुछ वास्तविक से संबंधित हो सकता है, लेकिन कनेक्शन तर्कसंगत नहीं है।
एक कार्गो-पंथ अभ्यास वह है जहां आप कुछ ऐसा जानने की कोशिश करते हैं, जिसे आपने अधिक जानकार स्रोत से सीखा है, लेकिन आप वास्तव में प्रक्रिया के बजाय सतह के कलाकृतियों की नकल कर रहे हैं (पापुआ न्यू गिनी में एक पंथ के लिए इसका नाम है) बांस से बाहर विमान नियंत्रण रेडियो (WWII जापानी और अमेरिकी विमानों को वापस लाने की उम्मीद)।
इन दोनों मामलों में कोई वास्तविक मामला नहीं बनता है।
एक एंटी-पैटर्न एक उचित सुधार का एक प्रयास है, चाहे वह उस अतिरिक्त मामले से निपटने के लिए छोटे (जो अतिरिक्त ब्रांचिंग से निपटने के लिए हो, जो स्पेगेटी कोड की ओर जाता है) या बड़े में जहां आप बहुत जानबूझकर एक पैटर्न को लागू करते हैं। या तो बदनाम या बहस की जाती है (बहुत से एकल के रूप में वर्णन करेंगे, कुछ में केवल लिखने के अलावा - जैसे लॉगिंग ऑब्जेक्ट या रीड-ओनली जैसे कॉन्फ़िगरेशन सेटिंग्स ऑब्जेक्ट - और कुछ भी निंदा करेंगे) या फिर जहां आप हल कर रहे हैं गलत समस्या (जब .NET को पहली बार सामने लाया गया था, तो MS ने निपटाने के लिए एक पैटर्न की सिफारिश की थी जब आपके पास अप्रबंधित क्षेत्र और डिस्पोजेबल प्रबंधित फ़ील्ड थे - यह वास्तव में उस स्थिति से बहुत अच्छी तरह से निपटता है, लेकिन असली समस्या यह है कि आपको मिल गया है एक ही कक्षा में दोनों प्रकार के क्षेत्र)।
जैसे, एक एंटी-पैटर्न कुछ ऐसा है जो एक स्मार्ट व्यक्ति जो भाषा, समस्या डोमेन और उपलब्ध पुस्तकालयों को अच्छी तरह से जानता है, वह जानबूझकर करेगा, जो अभी भी उल्टा है (उल्टा पड़ता है)।
चूँकि हम में से कोई भी किसी दिए गए भाषा, समस्या डोमेन और उपलब्ध पुस्तकालयों को अच्छी तरह से जानना शुरू नहीं करता है, और चूंकि हर कोई कुछ याद कर सकता है क्योंकि वे एक उचित समाधान से दूसरे में जाते हैं (जैसे एक अच्छे उपयोग के लिए एक क्षेत्र में कुछ संग्रह करना शुरू करें, और फिर प्रयास करें। इसे दूर करें लेकिन काम पूरा न करें, और आप प्रश्न की तरह कोड के साथ समाप्त हो जाएंगे), और चूंकि हम सभी समय-समय पर सीखने में चीजों को याद करते हैं, इसलिए हम सभी ने कुछ बिंदु पर कुछ अंधविश्वासी या कार्गो-पंथ कोड बनाया है। । अच्छी बात यह है कि वे वास्तव में एंटी-पैटर्न की तुलना में पहचान करने और सही करने के लिए स्पष्ट हैं। सही एंटी-पैटर्न या तो यकीनन एंटी-पैटर्न नहीं होते हैं, या कुछ आकर्षक गुणवत्ता वाले होते हैं, या कम से कम किसी को लुभाने का एक तरीका होता है, यहां तक कि खराब होने पर भी पहचाना जाता है (बहुत अधिक और बहुत कम परतें दोनों अनियंत्रित रूप से खराब होती हैं, लेकिन एक से बचना दूसरे की ओर जाता है)।