سؤال

هل لديك أي sugestions من الأدوات لتسهيل مهمة التفاهم C/C++ الكود ؟ نحن فقط ورثت قطعة كبيرة من البرامج المكتوبة من قبل الآخرين ونحن بحاجة للحصول بسرعة تصل إلى سرعة على ذلك.أي نصيحة على الأدوات التي يمكن تبسيط هذه المهمة ؟

هل كانت مفيدة؟

المحلول

SourceInsight و فهم C++ هي أفضل الأدوات التي يمكن أن تحصل c/c++ تحليل التعليمات البرمجية بما في ذلك الرسوم البيانية.

نصائح أخرى

التنميط البرنامج يعطيك فكرة عن المهام التي كانت تسمى.

إذا كان يمكنك استخدام لينكس ، في محاولة KCachegrind

أنا شخصيا استخدام مصحح الأخطاء.تشغيل من خلال رمز انظر ماذا يفعل وأين يذهب به هو السبيل الوحيد.

ومع ذلك ، يمكنك تشغيله من خلال بعض الوثائق-المولدات التي (في بعض الأحيان) مساعدة.وخير مثال هو doxygen.

Doxygen هو جيد جدا في توليد الرسوم البيانية من المدونة دون تطبيق العلامات ، إذا كنت بدوره على EXTRACT_ALL الخيار.تحتاج GraphViz تثبيت الحصول على مخططات ولدت مع HAVE_DOT الإعداد.أجد تركيبها وترك DOT_PATH فارغة يعمل بشكل جيد على ويندوز ولكن على نظام التشغيل/X تبقى الحاجة إلى نقطة مباشرة إلى نقطة أداة الموقع.

هناك ممتازة رمز استكشاف الكهوف المادة في ACM الانتظار الذي يتحدث أكثر عن استخدام doxygen و DTrace.

KScope بني على cscope فائدة, إذا كنت على لينكس (كدي).أفضل شيء لقد استخدمت من أي وقت مضى (كل الوقت) إلى deleve في بعض قطعة ضخمة غير مألوفة البرمجية التي يجب أن تعدل بطريقة أو بأخرى أو أي API أنا لتوظيف احتياجات بلدي.بين معالمه هي المرجعية قاعدة بيانات يمكن البحث في الكثير من الطرق:يمكنك أن تجد جميع المراجع رمزا عالميا تعريف تجد المتصلين/callees وظيفة وأكثر من ذلك بكثير.حتى أنه لديه المدمج في IDE و القدرة على إظهار الدعوة الرسم البياني.

Doxygen سوف تعطيك الدرجة العلاقة البيانية إذا كنت تستخدم graphviz ، حتى إذا لم تكن قد أعدت خصيصا لذلك.

هناك بعض الأدوات مثل مصر http://www.gson.org/egypt/egypt.html هذا العمل, ولكن فقط إذا كنت مباراة المتوقع دول مجلس التعاون الخليجي النسخة المستخدمة في تجميع رمز و بالضبط نسخة من إرسال callgraph مولد.نفس الشيء يمكن أن يقال عن codeviz http://www.csn.ul.ie/~ميل/المشاريع/codeviz/

الخيار الآخر هو valgrind المستخدمة في cachegrind وضع (فإنه يولد نوع من إرسال callgraph التي يمكنك اتباعها من kcachegrind البرنامج.

أنا personnaly استخدام مصحح الأخطاء Visual Studio أدوات.

لأنه يأتي مع "المتصل الرسم البياني" الميزة التي تسمح لك تصور الأشياء في مربعات صغيرة.أيضا مكدس الاستدعاءات المعتادة مشاهدة الميزات هي عادة كل ما أحتاج

هناك أيضا AspectBrowser التي لا تعمل بشكل جيد مع الكسوف 3.4.0

محاولة AQtime, إنه التنميط أداة يعرض جميع الوظائف التي حصلت يسمى (و الوقت الذي استغرقته), يمكنك تحديد بداية ونهاية نقاط التحليل.لديهم محاكمة 30 يوما.

اعتدت Borland معا في حين يعود و هل وظيفة لائقة توليد نماذج من التعليمات البرمجية.وأعتقد أنه سوف تولد حتى البيانية تسلسل من التعليمات البرمجية.نضع في اعتبارنا إذا التعليمات البرمجية الخاصة بك في حالة من الفوضى النموذج الخاص بك سوف تكون أيضا.وعلى ما أذكر أنها ليست رخيصة ولكن في بعض الأحيان يمكنك التقاط الخاصة.

عقلانية تحديد يعرض أيضا دعوة لطيفة الرسم البياني.

حاولت أداة اسمه البرنامج التي ليست كبيرة جدا رسوميا ولكن يفعل ما يقول:مخطط من التعليمات البرمجية.http://www.aivosto.com/visustin.html

Doxygen, الشيء الجيد في هذا هو أنها سوف تتيح لك معرفة مجرفة القبيح/جيد هو رمز من حيث دوري التبعية من الطبقات.لذلك سوف تضطر إلى إعادة عامل الكود الخاص بك, على الرغم من أنك قد لا ترغب في ذلك :-)

Slickedit كبيرة لتبحر كتل كبيرة من التعليمات البرمجية كنت لا تعرف.العلامات الميزة تسمح لك للتعامل مع رمز على أساس وظيفي ، دون الاضطرار إلى التعامل مع الملف الذي هو فيه.(EMACS في الواقع العلامات و هو كل بت جيدة مثل Slickedit ، ولكن مع انحدارا قليلا من منحنى التعلم)

عندما تحصل على أسلوب أو فئة أو متغير أنت لا تفهم, أنت فقط دفع الوسم للذهاب إلى هذا الرمز ، ثم pop-الوسم الظهر.(أولئك لا بد أن ضربات المفاتيح, لذلك هو سريع جدا)

يمكنك أيضا استخدام البحث-المراجع لمعرفة حيث أن وظيفة/متغير يستخدم.

يوفر طن من الوقت أكثر من الحاجة إلى الذهاب من معرفة أي شيء في.

doxygen هو حر doc-توليد أداة (على غرار جافادوك) التي من شأنها أن تنتج أيضا العلاقة البيانية أيضا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top