understand是國外開發(fā)的一款非常優(yōu)秀的靜態(tài)代碼分析工具,它可以幫助程序開發(fā)者進(jìn)行分析和閱讀大規(guī)模項(xiàng)目的代碼,并對代碼進(jìn)行分析校準(zhǔn),軟件支持Ada、C/C++、C#、Java、Fortran、Pascal、Perl等多種編程語言,同時還集成了代碼編輯器可以實(shí)時的對代碼進(jìn)行編輯,非常的不錯,推薦給廣大程序開發(fā)者下載安裝使用。
功能介紹:
1. 支持多語言:Ada, C, C++, C#, Java, FORTRAN, Delphi, Jovial, and PL/M ?;旌险Z言的project也支持
2. 多平臺: Windows/Linux/Solaris/HP-UX/IRIX/MAC OS X
3. 代碼語法高亮、代碼折迭、交叉跳轉(zhuǎn)、書簽等基本閱讀功能。
4. 可以對整個project的architecture、metrics進(jìn)行分析并輸出報表。
5. 可以對代碼生成多種圖(butterfly graph、call graph、called by graph、control flow graph、UML class graph等)在圖上點(diǎn)擊節(jié)點(diǎn)可以跳轉(zhuǎn)到對應(yīng)的源代碼位置。
6. 提供Perl API便于擴(kuò)展。作圖全部是用Perl插件實(shí)現(xiàn)的,直接讀取分析好的數(shù)據(jù)庫作圖。
7. 內(nèi)置的目錄和文件比較器。
8. 支持project的snapshot,并能和自家的TrackBack集成便于監(jiān)視project的變化。
軟件特點(diǎn):
一、強(qiáng)大的自動繪圖能力。
可以生成許多種有用的圖形,如類關(guān)系圖、函數(shù)調(diào)用關(guān)系圖、頭文件包括關(guān)系等。下面是CFile的類圖。
二、出色的增量搜索功能
增量搜索也許不是新概念,在Visual Studio里早就有。但是軟件里的增量搜索具有動態(tài)代碼加亮的功能。也就是說,可以把選中的標(biāo)識符的所有實(shí)例,都以醒目的顏色顯示出來,對于閱讀代碼時,非常有幫助。如下圖,對函數(shù)參數(shù)pFileTime執(zhí)行增量搜索,則它出現(xiàn)的過地方都會被標(biāo)示出來。這樣,這個參數(shù)是如何被使用的,一目了然。
三、豐富的標(biāo)識符信息
代碼信息數(shù)據(jù)庫十分完善,所有的標(biāo)識符可以分類顯示。每一類標(biāo)識符又具有不同的信息。如關(guān)于函數(shù)的信息,可以顯示定義它的文件名,返回值類型,參數(shù)信息,調(diào)用函數(shù),被調(diào)用函數(shù),引用這個函數(shù)的信息,代碼量等。其中,引用信息里會有引用類型,如申明、調(diào)用、定義等,非常實(shí)用。
四、方便的搜索功能
很多窗口都有方便的搜索功能,便于快速定位需要的信息。如項(xiàng)目瀏覽器里,可以輸入文件名,快速找到相關(guān)的文件。