असल में मैं उपकरण जो स्रोत कोड दृश्य उत्पन्न चाहते हैं की तरह:सी/सी ++ स्रोत कोड विज़ुअलाइज़ेशन?
- समारोह कॉल ग्राफ
- निर्भरता ग्राफ
- ...
असल में मैं उपकरण जो स्रोत कोड दृश्य उत्पन्न चाहते हैं की तरह:सी/सी ++ स्रोत कोड विज़ुअलाइज़ेशन?
एक डुप्लिकेशंस हो सकता है, लेकिन ollydbg, IDA Pro और this website को कुछ बहुत सेक्सी छवियों के साथ संसाधनों का पूरा समूह देखें।
Doxygen इसके लिए वास्तव में उत्कृष्ट है, हालांकि आपको ग्राफ को आकर्षित करने के लिए GraphViz इंस्टॉल करने की आवश्यकता होगी।
एक बार जब आप सबकुछ स्थापित कर लेते हैं, तो ग्राफ को आकर्षित करना वास्तव में आसान होता है। सुनिश्चित करें कि आपने EXTRACT_ALL और CALL_GRAPH को सत्य पर सेट किया है और आपको जाने के लिए अच्छा होना चाहिए।
Doxygen के लिए इस फ़ंक्शन पर पूर्ण प्रलेखन here है।
स्वीट। उपयोग करने के लिए बहुत सरल है। ग्राफ़विज़ आपके सिस्टम पथ को संशोधित करता है, और डॉक्सिजन इसका उपयोग करता है। – bobobobo
+1 मैं सहमत हूं। मौजूदा कोड की खोज करते समय डॉक्सिजन एक बहुत उपयोगी उपकरण है। उस स्रोत को जांचें जो स्रोत कोड उत्पन्न करता है और आप आसानी से अपने कोड-एडिटर को खोलने के बिना अपने कोडबेस के माध्यम से नेविगेट करते हैं ... – neuro
यह भी सुनिश्चित करें कि HAVE_DOT = YES – polypus74
आप सॉफ्टवेयर डिजाइन और मॉडलिंग के लिए विभिन्न उपकरण देख सकते हैं (वाजिब गुलाब, स्पार्क्स एन्टरप्राइज़ आर्किटेक्ट, Umbrello, आदि)। उनमें से अधिकांश में सोर्स कोड द्वारा मॉडलिंग को रिवर्स करने और यूएमएल क्लास आरेखों को प्राप्त करने, और कभी-कभी अनुक्रम आरेखों को प्राप्त करने के लिए कुछ कार्यक्षमता होती है (और यह फ़ंक्शन कॉल ग्राफ़ के बहुत करीब है)।
लेकिन वास्तव में बड़े प्रोजेक्ट कोड बेस पर कुछ चित्र प्राप्त करने के बाद आप महसूस कर सकते हैं कि ऐसे ग्राफ पढ़ने और समझने के बजाय कठिन हैं। जटिलता की दुर्भाग्य से विज़ुअलाइजेशन क्षमताओं बहुत सीमित हैं।
मेरे लिए, "विभाजन और नियम" मुहावरे का उपयोग करना अधिक दृढ़ दृष्टिकोण है। आप अपने कुछ कोड बेस से विभिन्न कार्यक्षमता ब्लॉक या परतों को निकाल सकते हैं (केवल अलग-अलग फ़ोल्डरों द्वारा सीपीपी-फाइलों को सॉर्ट करना)। एक और तरीका है कुछ स्क्रिप्ट्स (बैश, पायथन) का उपयोग करना सरल सीएसवी टेबल बनाने के लिए फाइलों, वर्गों या कार्यों जैसे "निर्भरता की संख्या" आदि के कार्यों के साथ)।
+1 अच्छी टिप्पणी। – neuro
मैं दृढ़ता से BOUML की अनुशंसा करता हूं। यह एक मुफ्त UML मॉडलिंग आवेदन है, जो है: (, benchmarks की जाँच कभी बनाया सबसे तेज यूएमएल उपकरण)
तो: अपने कोड को BOUML में आयात करें और इसे वहां देखें, या एसवीजी को निर्यात करें और इसे फ़ायरफ़ॉक्स में देखें।
नि: शुल्क संस्करण के लिए:
+1 एक निःशुल्क यूएमएल उपकरण के लिए जो प्रयास करने योग्य हैं। – neuro
4.23.7 के लिए विंडोज इंस्टालर उसी स्रोत फोर्ज पेज पर "फाइल" अनुभाग में डौमल के रूप में पाया जा सकता है। – Zeks
http://launchpad.net/~pasgui/+archive/ppa/ यह लड़का अन्य धागे में सुझाए गए @Zeks के रूप में douml डेबियन/ubuntu के लिए नियमित रूप से बनाता है। – kikeenrique
डाउनलोड किया जा सकता वहाँ CDOC कहा जाता है एक पुराने उपकरण है कि हम अभी भी कॉल उत्पन्न करने के लिए इस्तेमाल करते हैं पेड़।
यदि आप विजुअल स्टूडियो का उपयोग करते हैं, तो 2010 की अंतिम रिलीज आपको अनुक्रम आरेख और निर्भरता ग्राफ उत्पन्न करने देती है। हालांकि, रिलीज वर्तमान में केवल .NET अनुप्रयोग परियोजनाओं का समर्थन करता है।
टीम को भविष्य में रिलीज में सी ++ का समर्थन करने में बहुत रुचि मिली है, इसलिए आप ट्यूनेड रहना चाहेंगे। इस बीच, आप अपडेट करने के लिए वीएस 2010 आर्किटेक्चरल डिस्कवरी & मॉडलिंग टूल्स फ़ोरम http://social.msdn.microsoft.com/Forums/en-US/vsarch/threads पर पोस्ट कर सकते हैं। मुझे पता है कि उत्पाद टीम उपकरण के बारे में ग्राहक प्रतिक्रिया सुनना पसंद करती है।
इस दौरान, आप निम्न विषयों में नेट कोड से अनुक्रम आरेख और निर्भरता चित्र बनाने के बारे में अधिक सीख सकते हैं:
कैसे करें: का पता लगाएं कोड आर्किटेक्चर एक्सप्लोरर का उपयोग करना: http://msdn.microsoft.com/en-us/library/dd409431%28VS.100%29.aspx
कैसे करने के लिए: कोड बनाएं से ग्राफ़ दस्तावेज: http://msdn.microsoft.com/en-us/library/dd409453%28VS.100%29.aspx#SeeSpecificSource
कैसे करें: अनुक्रम आरेख के साथ अन्वेषण कोड: http://msdn.microsoft.com/en-us/library/ee317485%28VS.100%29.aspx
आर सी रिहाई की कोशिश करने के लिए और प्रतिक्रिया प्रदान करते हैं ऊपर लिखा उपकरणों के लिए http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=457bab91-5eb2-4b36-b0f4-d6f34683c62a
पर इसे डाउनलोड इसके अलावा, आप understand कोशिश कर सकते हैं। लेकिन, यह मुफ़्त नहीं है।
उनके पास एक परीक्षण संस्करण है जो काफी आसान हो सकता है। – karlphillip
क्या आपका मतलब इंटरफेस (जैसे विरासत आरेख) या कार्यान्वयन में निर्भरता (निर्भरता ग्राफ) में निर्भरता है, उदाहरण के लिए फ़ंक्शन ए से बी का किनारा है यदि उसके शरीर में ए कॉल बी है)? – Krystian
आप CppDepend (http://www.cppdepend.com) को आजमा सकते हैं जहां आप फ़ंक्शन कॉल ग्राफ़/निर्भरता ग्राफ उत्पन्न कर सकते हैं और CQLinq.CppDepend का उपयोग कर ग्राफ़ में तत्वों को फ़िल्टर कर सकते हैं ओपन सोर्स योगदानकर्ताओं के लिए निःशुल्क है। –