您的位置:首页 > 其它

Visual Studio 2010分析工具之Dependency Graph【z】

2010-10-01 17:11 316 查看
Dependency Graph(相依性圖形)是Visual Studio 2010新增的Code分析工具,大到Assembly小到Method的各種相依關係,從一個Assembly角度看,誰呼叫了我,我呼叫了誰,除了自動化產生所有方案中的關係外,可以從Architecture Explorer(架構總管)中產生部分自己想看的關連。
本篇使用Tailspin Travel做為範例程式,可至Codeplex下載
1.產生Dependency Graph 產生Dependency Graph有3種方式
從Dependency Graph產生器
從Architecture Explorer產生
空白的Dependency Graph
2.Dependency Graph產生器 從Menu > Architecture > Generate Dependency Graph下有四個方式產生Dependency Graph
By Assembly -- 將方案中的每一個Assembly(通常一個Project等於一個Assembly)組群,加入圖形
By Namespace -- 依Namespace組群,將方案中的每一個元素加入圖形
By Class -- 打散組群,將方案中的每一個Class加入圖形
Custom -- 自訂加入方式



上圖為By Assembly方式產生之圖形

2.圖形




每個圖形
內有幾個子元素,像圖中就有9個子元素
可以展開、縮小子圖形
圖形的Icon,這可以從Legend中修改
產生後都會.NetFramework中的Type也會一併產生,通常用不到可以刪除。



在連條線上停留幾秒



會出現如上圖的選項,上下按鈕主要是線多線太長時可以迅速移動二個圖形,而+按鈕為依這二圖形的關係來產生新的Dependency Graph
如下圖只要看這二個圖形的關連,按下 + 按妞



會顯示自訂圖形產生視窗,選擇產生方式,如此例,會產生Type與Mehod並以Type群組



產生結果,只會顯示二個Type有關連的Method



還有群組的子圖形關連,預設必需要選取後才會顯示



可以從Directed Graph Toolbar修改顯示方式



3.圖型的排列 Directed Graph Toolbar中有下列方列方式



前五個只是方向的不同,而

是改成矩陣的方式檢示



4.從Architecture Explorer產生 可參考筆者的那一篇文章Visual Studio 2010分析工具之 Architecture Explorer
5.新增空白Dependency Graph 新增空白Dependency Graph至少有二種
從Menu或Solution Explorer中Add > New Item,選擇Directed Graph Document
從Menu > Architecture > New Diagram ,選擇Directed Graph Document,但只肯加入Modeling專案中,沒有Modeling專案會自動新增



Note:空白的Dependency Graph與產生的Dependency Graph功能上都是一樣的,只是空白的可以依自己的需求增加,不會像產生的太多圖形可以是自己不需要的。
6.加入方案外的EXE與DLL 目前發現只能從檔案總管中拖曳進來。
7.Legend管理 Legend的項目是可以自訂的,相要顯示什麼可以自己訂,但不可重覆,Node Category只會顯示目前有的圖形類型



圖形的樣式也可以自訂
背景顏色
邊框顏色
文梨顏色
Icons
Legend中修改會一併修改附合的圖形,如下圖將Class的背景顏色改成深黃色,所有的Class類型的圖形都會改成深黃色



如果想讓某幾個圖形特別不同,可以加入Category
使用預設的



或從屬性中增加



8.Group管理 從Architecture Explorer拖曳的圖形,是有不會以Group方式顯示



但可以將需要群組的圖形選取,右鍵>Group> Show As Group,就可以將圖形依關連群組。






Note: 想要解開群組可以使用Show As Link,使用Remove Group或Remove From Parent會把關連或父圖形刪除,而Show All As Links/Groups就是一次操作所有圖形
也可以自訂群組 右鍵>Group>Add Parent Group,而Group也可以有Legend(但只有一個)。



9.輸出 按右鍵有二種輸出方式
Save As XPS
Copy Image
這二者的輸出都只是圖檔,只是一個要開任一個軟體存而以。參考資料
HOW TO:從程式碼產生圖形文件

HOW TO:使用相依性圖形探索程式碼

原帖:http://www.dotblogs.com.tw/wadehuang36/archive/2010/08/02/vs_dependencygraph.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: