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