2010-07-19 41 views
7

अनुमानित आकार 200 के एलओसी के सी # कोडबेस से परिचित होने का सबसे अच्छा तरीका क्या है? क्या कोई उपकरण उपलब्ध है?कोड को समझना

http://www.program-comprehension.org/ ऐसा लगता है कि इस उद्देश्य के लिए लंबे समय तक एक कार्यक्रम चल रहा है।

धन्यवाद।

उत्तर

7

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

ndepend.com एक सिंहावलोकन के लिए बहुत अच्छा है।

Atomiq डुप्लिकेशन के लिए एक अच्छा दृश्यता है। यह आपके कोड-बेस को पार करता है और इसे एक व्हील के माध्यम से देखता है, जहां पहिया में प्रवक्ता द्वारा डुप्लिकेशंस का प्रतिनिधित्व किया जाता है और आप साइड-बाय-साइड डिफ को देखने के लिए प्रत्येक पर होवर कर सकते हैं।

Nitriq गुणवत्ता बाधाओं को लागू करने के लिए एक अच्छी LinqToCode तरह की चीज है। बिल्ड-प्रोसेस के हिस्से के रूप में आप इन नियमों को कमांड लाइन से चला सकते हैं।

ReSharper's नेविगेशन फीचर्स यह जानने के लिए अमूल्य हैं कि क्या उपयोग करता है। खोजें-उपयोग बहुत उपयोगी है। कोडबेस की खोज के लिए, Alt + F7 आपका मित्र है, क्योंकि यह आपके द्वारा चलाए गए प्रश्नों का इतिहास भी खुला रखेगा, ताकि आप अपनी जगह रखने के लिए आगे और आगे कूद सकें।

विजुअल स्टूडियो कर्सर की स्थिति/संपादक बिंदुओं का रिकॉर्ड रखता है और कर्सर को वापस ले जाने और इनके बीच आगे बढ़ने के लिए ctrl + - और ctrl + shift + है।

यदि आप पारंपरिक टिप्पणी (उदाहरण के लिए // नोट: ब्लाह) पर निर्णय लेते हैं तो आप अपने आप नोट्स डाल सकते हैं और फिर ऐसी सभी टिप्पणियों (और अन्य पैटर्न जिन्हें आप परिभाषित कर सकते हैं) को खोजने के लिए रीशेर्पर के TODO एक्सप्लोरर का उपयोग कर सकते हैं, फिर नेविगेट करें उनको। उदाहरण के लिए, हम फिलहाल कोड-समीक्षा के लिए इसका उपयोग करते हैं।

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

+0

+1 आपको अपने उत्तर में कुछ और जानकारी जोड़नी चाहिए और यह बहुत बेहतर होगा :)। NDepend के लिए – Henrik

+0

+1; यह आपको प्रत्येक स्तर (असेंबली, कक्षाएं, विधियों या किसी भी संयोजन) पर संरचना दिखाएगा। –

+0

@ हेनरिक अगर आपने अपनी टिप्पणी के बारे में कुछ और जानकारी जोड़ दी है, तो मैं इसे बेहतर बनाने के लिए अपने उत्तर में अधिक जानकारी कैसे जोड़ सकता हूं, यह बहुत बेहतर होगा :) :-P –

1

@ पीटर माउंस सुझाव देता है, NDepend अच्छा है और आप गैर-वाणिज्यिक उपयोगों के लिए इसे मुफ्त में उपयोग कर सकते हैं। आपको निर्भरता ग्राफ जैसी बहुत अच्छी विज़ुअलाइज़ेशन मिलती हैं जो आपको क्या हो रहा है इसका एक अवलोकन प्राप्त करने में मदद करती है।

विजुअल स्टूडियो 2010 में Architecture Explorer के रूप में भी समान उपकरण शामिल हैं, हालांकि मुझे लगता है कि आपको इसे प्राप्त करने के लिए आर्किटेक्चर अतिरिक्त (या ऊपर) की आवश्यकता है। लेकिन यह इंटरेक्टिव है और आपको उस संरचना में ड्रिल करने देता है जो उपयोगी है।

1

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

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