मैं, मैं और मैं दोनों एक निर्माता और विरासत कोड के अनुरक्षक रहे हैं। यदि आपके उपकरण का "हज़ारों उल्लंघनों" (या उस मामले के लिए भी सैकड़ों) का निर्माण होता है, तो उपकरण को भूल जाएं, यह स्थिति के लिए अनुपयुक्त है ...
मुझे लगता है कि मूल डेवलपर्स लंबे चले गए हैं और चर्चा के लिए अनुपलब्ध हैं। तो कोई भी ऐसा नहीं है जो डिजाइन और कोडिंग शैली के बारे में क्यों और कैसे समझता है। सैकड़ों या हजारों उल्लंघनों को सुधारना कोड की कुछ पंक्तियों को यहां और वहां फिर से लिखने की बात नहीं है। इसके बजाय, निस्संदेह इसे पुन: प्रसंस्करण / पुन: कार्यात्मक-अपघटन की आवश्यकता होती है। आप किसी भी मौजूदा मौजूदा कोडबेस के साथ ऐसा करने की कोशिश करते हैं, बिना इसके मौजूदा डिज़ाइन को समझे बिना, और आप बग्स / समस्याओं / आदि का एक नया सेट पेश करने के लिए बाध्य हैं। अभी आपके पास जो कीड़े हैं उनके मुकाबले एक नया कीड़ा भी बदतर हो सकता है (या आपके उपकरण से भी बदतर है >> सोचता है कि << अब आपके पास है)।
"हजारों उल्लंघनों" को संबोधित करने के लिए एकमात्र समझदार दृष्टिकोण खरोंच से फिर से लिखना होगा। एक लंबा और महंगा प्रयास, और प्रबंधन को बेचने के लिए लगभग असंभव है। और इस मामले में वे शायद सही हैं ...
लीगेसी कोड को आमतौर पर केवल ट्वीक की आवश्यकता होती है। जैसे y2k के लिए, या जब स्टॉक 256 वें से दशमलव तक चला गया। मैंने दोनों कि cr * p का लोड किया। और बहुत सारे अन्य समान सामान। यह आम तौर पर बहुत "पिनपॉइंट" है जिसमें आप कभी-कभी खराब शैली, खराब कार्यात्मक अपघटन, खराब आदि के माध्यम से "पढ़ सकते हैं" और उन स्थानों के संग्रह का पता लगा सकते हैं जिन्हें संशोधित करने की आवश्यकता है। और फिर, "उन स्थानों के बीच" क्या होता है, यानी, क्या अधिक उच्च-स्तरीय प्रवाह है, आपके लिए एक रहस्य बन सकता है। बस यह सुनिश्चित करें कि आप जिस स्थानीयकृत कार्यप्रणाली को बदल रहे हैं, उसे समझें, और फिर किसी भी दुष्प्रभाव के लिए परीक्षण, परीक्षण, परीक्षण करें, आपके स्थानीयकृत ज्ञान का अनुमान लगाने में सक्षम नहीं होंगे।
यदि आप उस तरह से कोड के माध्यम से अपना रास्ता नहीं देख पा रहे हैं, तो आप विरासत कोड को बनाए रखने के लिए सबसे अच्छे व्यक्ति नहीं हो सकते हैं। कुछ लोग एक रिक्त स्क्रीन के साथ शुरू कर सकते हैं और सुंदर कार्यक्रम लिख सकते हैं, लेकिन अन्य लोगों के कोड के बड़े कोडबेस से शुरू नहीं कर सकते हैं और इसे बनाए रख सकते हैं। अन्य लोग कोड को बनाए रख सकते हैं, लेकिन खरोंच से शुरू नहीं कर सकते। कुछ दोनों कर सकते हैं। सुनिश्चित करें कि सही लोग आपकी विरासत कोड बनाए हुए हैं।
कभी-कभी आप अपनी विरासत कोडबेस को फिर से डिज़ाइन करना और फिर से लिखना चाह सकते हैं, जब व्यवसाय (या अन्य) आवश्यकताएं इस हद तक बदल जाती हैं कि सीट-ऑफ-पैंट्स "ट्विक्स" बस बदली हुई आवश्यकताओं को समायोजित नहीं कर सकती है । और उस बिंदु पर, आप पहले से ही एक नया कार्यात्मक आवश्यकता दस्तावेज़ लिखकर शुरू कर सकते हैं, यह सुनिश्चित करते हुए कि सभी हितधारक ई-बोर्ड हैं। यह मूल रूप से एक पूरी नई बॉलगेम है।
एक और केवल >> गलत << बात करने की कोशिश है विरासत कोड रखरखाव के इलाज के लिए उसी तरह से आप नए विकास के बारे में जाना होगा। और यह एक गलत बात है कि आप जिस रास्ते पर जाना चाहते हैं, ठीक उसी तरह लगता है :) इसके लिए मेरा शब्द लें, कि आप क्या करना चाहते हैं।