Modeling PowerToys for Visual Studio 2008

Modeling PowerToys for Visual Studio 2008

因為最近都是在寫規劃與設計 Class,而管理 Class Diagram 與程式碼開發的的部分我都是使用 Visual Studio 2008 Professional Edition來實作。不過利用原先在 Visual Studio 2008 Class Designer 在畫 Class Diagram 說實在不是那麼地方便。不過自從安裝 PowerToys for the Class Designer and Distributed System Designer 之後,對於設定 Class Diagram 來說有比較容易些。主要是因為 PowerToys for the Class Designer and Distributed System Designer 有多了一些小功能,簡化了一些動作使得開發 Class 變得有效率。

本來還想介紹【Framework Design Studio】,但是經過我一個星期的使用覺得不是很好用。個人覺得開發出來的 Dll 檔案丟到 Reflector for .NET 或是使用 Visual Studio 的 Object Browser 都來得好用多了。程式碼比對 Diff 的功能,因為都用 Subversion 來做版本控制,所以該功能對我來說可有可無。匯出文件的功能,匯出 xml、rtf 都沒有問題,惟獨匯出 doc 的時候程式就 hang 住,真的很莫名其妙。

以下介紹幾個 PowerToys for the Class Designer and Distributed System Designer 不錯的功能:

(1) Pan/Zoom Window:檢視 Class Diagram 的縮圖 Thumbnail View,並利用縮圖來移動。

透過【View -> Other Windows -> Pan/Zoom Window】就可以開啟 Pan/Zoom Window

Model-0000

Pan/Zoom Window 可以利用滑鼠來拖曳整個 Class Diagram,綠色框框就是你 Class Diagram 的視野範圍

Model-0003

或是透過 Class Diagram 介面的十字圖案按鈕,一樣也會彈出迷你版的 Pan/Zoom Window

Model-0001

Model-0002

(2) Diagram Search:搜尋符合搜尋條件的 Class 圖案,當你使用自動排版或是 Class 太多太雜的尋圖好幫手,利用【Ctrl + F 】啟動。

Model-0006

符合搜尋條件的 Class 就會自動獲得焦點,利用【F3】還可以搜尋下一個符合條件的 Class。

(3) Floating Property Grid:浮動式的 Property Grid 視窗,透過 Class 旁邊的綠色三角箭頭,可以快速更新 Class 的屬性。

Model-0004

Model-0005 

(4) Association and Inheritance Line Dongles:利用 Class 上面與右邊的綠色箭頭拖曳至其他 Class 會快速建立,快速建立【Inheritance】【Association】的關係。

Model-0007

拖曳上面的綠色箭頭至其他 Class 會出現灰色虛線,表示兩者建立繼承關係。

Model-0008

放開拖曳的滑鼠,灰色虛線變成實線,完成繼承關係。

Model-0009

拖曳右邊的綠色箭頭至其他 Class 會出現灰色虛線,表示建立結合性產生一屬性。

Model-0010

放開拖曳的滑鼠,灰色虛線變成橘色實線,建立一個新的屬性。

Model-0011

但是 Visual Studio 提供的 Class Designer 僅此那麼多,如果要表現【aggregation 聚合】【Composition 組合】或是【數量關係】是沒有辦法表現的。

(5) Formatting Commands:提供排列圖列的圖形化工具,調整間距、對齊等功能工具。在 Menu 空白處按下滑鼠右鍵,點擊【Layout】就會出現 Formatting Commands 工具列。

Model-0012

Model-0013

關於 PowerToys for the Class Designer and Distributed System Designer 其他功能可參考 Modeling Power Toys ReadMe,該檔案會放置在【C:\Documents and Settings\xxxxx\Application Data\Microsoft\MSEnvShared\Addins\Modeling Power Toys Help.mht】。