代碼閱讀分析工具Understand 2.0試用

來源:互聯網
上載者:User

標籤:style   blog   http   io   os   ar   使用   sp   檔案   

Understand 2.0是一款源碼閱讀分析軟體,功能強大。試用過一段時間後,感覺相當不錯,確實能夠大大提高代碼閱讀效率。因為Understand功能十分強大,本文不可能詳盡地介紹它的全部功能,所以僅僅列舉本人覺得比較重要或有特色的功能,以做拋磚引玉之舉。

Understand 2.0能夠從http://www.scitools.com/下載到,安裝後能夠試用15天。

使用Understand閱讀代碼前,要先建立一個Project,然後把全部的源碼檔案增加到這個Project裡。這裡我建立了一個ATLSTL的Project,然後把Microsoft Visual Studio 2008帶的ATL、STL、MFC的源碼增加當中。須要說明的是,Understand支援非常多種源碼,包含C#,而不光是C++代碼。

這是整個使用者介面的概覽,能夠看到和Visual Studio的風格非常類似。全部了子表單都能夠隨意停靠或折迭。

 

 以下逐個介紹Understand的特性。

一,強大的自己主動畫圖能力。

Understand能夠產生很多種實用的圖形,如類別關係圖、函數呼叫歷程圖、標頭檔內含項目關聯性等。以下是CFile的類圖。

 

當然,假設願意,你能夠產生CObject派生的整個MFC的類圖(http://p.blog.csdn.net/images/p_blog_csdn_net/qwang24/EntryImages/20090411/ButterflyGraph-CObject.png)。這樣的圖曾經僅僅能在MSDN裡能夠見到,如今能夠在瞬間自己主動產生,非常酷!

 

還能夠顯示函數的調用關係:

 

 

以及標頭檔的內含項目關聯性:

 

二,出色的增量搜尋功能

增量搜尋或許不是新概念,在Visual Studio裡早就有。可是Understand裡的增量搜尋具有動態代碼加亮的功能。也就是說,能夠把選中的標識符的全部執行個體,都以醒目的顏色顯示出來,對於閱讀代碼時,很有協助。例如以,對函數參數pFileTime運行增量搜尋,則它出現的過地方都會被標示出來。這樣,這個參數是怎樣被使用的,一目瞭然。

 

 

 

三,豐富的標識符資訊

Understand的代碼資訊資料庫十分完好,全部的標識符能夠分類顯示。每一類別識別項又具有不同的資訊。如關於函數的資訊,能夠顯示定義它的檔案名稱,傳回值類型,參數資訊,調用函數,被調用函數,引用這個函數的資訊,代碼量等。當中,引用資訊裡會有參考型別,如申明、調用、定義等,很有用。

 

而對於變數資訊,而以顯示變數在哪裡定義的,是設定變數的值還是使用變數的值等。

 

四,方便的搜尋功能

非常多表單都有方便的搜尋功能,便於高速定位須要的資訊。如項目瀏覽器裡,能夠輸入檔案名稱,高速找到相關的檔案。

 

Understand還有非常多其它強大的功能,如報表功能,代碼編輯,代碼變化跟蹤等。

當然,和其它全部的程式碼分析工具軟體一樣,Understand也有一些不足之處,如有時候會解析錯誤,不支援COM代碼的Attribute擴充,對機器配置要求較高,對正則表達式的支援不完好等。

 

備忘:

解決不能正確解析COM的Attribute擴充問題: 搜尋正則表達式: /]/s*$ , 替換為 /]; (使用Visual Studio的在多個檔案裡替換功能,不能直接使用Unserstand替換。)

解決不能正確解析__interfacekeyword問題: 在project選項裡添加宏定義,把__interface定義為struct。

代碼閱讀分析工具Understand 2.0試用

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.