maintenance - आप एक कोडबेस के साथ कैसे परिचित हैं जिसमें कोई दस्तावेज नहीं है?




codebase (6)

अगर ऐसा करने के लिए काफी छोटा है (10,000 लाइन या उससे कम) मेरे पास अच्छे पुराने फेश किए गए लिस्टिंग के साथ एक निष्पक्ष सफलता मिली है। कोड को प्रिंट करें, कुछ हाईलाइटर पेन और उन रंगीन पोस्ट-झंडे प्राप्त करें और सूची पर जाएं, नोट्स लिखें, संदर्भ ढूंढें और समग्र संरचना को एक साथ छान लें। कहीं ऐसा करने के लिए चुप हो जाओ और बस कोड को खत्म करने के लिए समय बिताना।

यदि यह कुछ में लिखा हुआ है, तो आप सीटीएग या इसके जैसा कुछ भी उपयोग कर सकते हैं, तो एक लैपटॉप लें ताकि आप कोड खोज सकें।

मुझे नहीं पता है, मुझे बताया गया है कि पिछले डेवलपर्स ने कोई बड़ी समस्या नहीं उठाते हुए सीधे कोडिंग में बढ़ने में ठीक किया था। मुझे आश्चर्य है कि अगर मैं कुछ वरिष्ठ प्रोग्रामर के साथ कुछ संक्षिप्त बैठकों के लिए अपने प्रबंधक का अनुरोध करके यह गलत कर रहा हूं। क्या सावधानी बरतनी चाहिए और इस बार संवेदनशील ट्रैकर को लंबे समय तक खत्म करना चाहिए, या इसे मांसपेशी की समय सीमा तक पहुंचाए?

सिर्फ साइड नोट पर, पिछले ऐप के रखरखाव वाले पिछले प्रोग्रामर कंपनी में एक साल से भी कम समय के बाद चले गए हैं। पता नहीं अगर किसी भी संबंध में कुछ भी हो।


इकाई परीक्षण पढ़ें कोई इकाई परीक्षण नहीं? कुछ यूनिट परीक्षण लिखें।


पहली बार मैं हमेशा (विज़ुस्टस्ट्यूडियो में) हमेशा एक समाधान में प्रत्येक प्रोजेक्ट का क्लास आरेख बनाता है। इससे मुझे यह देखने की सुविधा मिलती है कि मैं किसके साथ काम कर रहा हूं।

और कुछ कारणों से मैं सिर्फ पीले कानूनी पैड के साथ प्रमुख वर्गों के माध्यम से जाना जाता हूं और बस क्या बात करता है पर नोट्स नीचे ब्योरा यह मेरे लिए काम करने लगता है वास्तव में क्यों नहीं पता है, या क्यों यह सिर्फ कोड पढ़ने से बेहतर है

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

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


मेरे पास ऐसे दो नौकरियां थीं, जहां सभी प्रोग्रामर ने कंपनी छोड़ दी थी। मैं उस लाल ध्वज को कहूँगा

शायद यह संयोग नहीं है कि प्रोजेक्ट में कोई दस्तावेज़ीकरण नहीं है, लेकिन यह कहना मुश्किल है कि क्या वहां एक कारण संबंध है। सत्य निम्न में से कोई भी हो सकता है:

  • प्रोग्रामर को छोड़ दिया गया क्योंकि प्रबंधन ने उन्हें अपना काम दस्तावेज करने की अनुमति नहीं दी थी।
  • प्रबंधन ने प्रोग्रामर को जाने के लिए कहा क्योंकि वे अपने काम को दस्तावेज देने से इनकार करते थे।
  • प्रलेखन छोड़ने के बाद प्रोजेक्ट पर काम करना मुश्किल हो गया, दस्तावेज़ीकरण के बिना।

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

एपीआई डॉक्स उत्पन्न करने वाला उपकरण एक और विकल्प है, अन्य लोगों ने इसका उल्लेख किया है इस तरह के दस्तावेज केवल संदर्भ के लिए उपयोगी है। यह आपको दिखाने के लिए उपयोगी नहीं है कि किसी दिए गए वर्ग या विधि का सर्वोत्तम उपयोग कब या कैसे किया जाए।

सिस्टम के कुछ हिस्सों के लिए यूएमएल आरेख बनाने के लिए एक और अभ्यास होगा। कोड ऑब्जेक्ट-ओरिएंटेड आर्किटेक्चर त्रुटिपूर्ण है, तब भी एक अनुक्रम आरेख उपयोगी हो सकता है।


क्या आपने यह प्रश्न देखा ?

आम सहमति का उत्तर ऐसा लगता है:
सही में डुबकी और एक बग ठीक करें कोडेबेस के एक छोटे से हिस्से तक सीमित करें। डीबगर का बहुत उपयोग करें


मैं कई परीक्षणों के साथ कहूंगा, अगर उनके पास कुछ प्रकार की इकाई परीक्षण ढांचे की स्थापना है, तो आप अच्छे हैं, यदि नहीं, तो आप एक को शुरू करना चाहेंगे जैसा कि कुछ तोड़ने की तुलना में ज्यादा निराशाजनक नहीं है, जबकि आप किसी अन्य चीज़ को ठीक करने की कोशिश कर रहे हैं

और संदर्भ के लिए आप यह जांचना चाह सकते हैं, यह दोस्त आपके से अधिक ताकतवर जगह में है:

विरासत में मिला एक php-बुरा सपना-जहां-टू-शुरू