2010-12-03 14 views
5

想象一下這樣的情況。你得到一些遺留代碼或者得到一些新的框架。您需要調查並瞭解如何儘快使用此代碼。沒有機會向以前的開發人員尋求幫助。什麼是最佳實踐/方法/方法/步驟/工具(首選的.NET Framework工具堆棧)用於在調查新的代碼庫時獲得最大效率。探索/調查/理解新項目的階級層次和工作原理的最佳方式

如果是框架,並沒有什麼太大的文檔和單元測試,用什麼工具,你通常用它來探索類層次結構,方法,事件?它是默認的對象瀏覽器,MS Visual Studio的體系結構資源管理器還是其他一些工具,如Resharper層次結構/文件視圖?

+0

調試器ftw !!! – Pabuc 2010-12-03 13:58:37

回答

3

真的是沒有,因爲有這麼多的變量,每一個項目都是從不同的旁邊做這個最好的方法。

要絕對誠實地讓你的頭的最佳方式圍繞它是建立一個沙坑/測試環境,併爲更好的說明想,用它玩。然後再玩一些。

由於「擺弄它」,使用調試器和單步調試代碼會告訴你很多關於代碼的流程和結構的例子。還值得一提的是,你永遠不要相信評論,自己驗證功能。自寫評論以來,代碼可能已更改。

0

我發現,通常是最好的方式開始與一個完全陌生的代碼庫只是試圖得到它的運行。

之後,如果有需要解決的錯誤,請嘗試修復其中的一些錯誤。

這會讓您瞭解更新/維護系統的難度。你也應該開始看到代碼模式,或者缺乏代碼模式。

0

我經常發現單元測試是一個很好的開始,只要有一些!至少通過單元測試,你會得到簡短的例子,說明它是如何工作的,哪裏會失敗。但願有一些文檔撒謊太...

0

在VS2010,有Architecture下的工具,它可以幫助您分析您的代碼庫,並生成依賴圖給你。

1

用大型代碼庫深入研究新應用程序的最佳方法是,我發現的最佳解決方案是通過逆向工程工具在Enterprise Architect左右等應用程序中獲得最佳解決方案。 如果它不適合你,請嘗試VS提供的類圖。

到目前爲止,您可以獲得程序的靜態定義,但通過您在Resharper,VS2008(生成序列圖和...)以及VS2010中找到的工具來了解執行流程, (查看調用層次結構和...)。

正如在以前的答案說,調試和分析的應用也是非常有幫助的,在解決方案中設置斷點,看看調用堆棧,觀賞對象和....

0
  1. 檢查項目依賴。 這會給你一個解決方案內的項目流程的想法
  2. 檢查參考中使用的外部Dll。 這將告訴系統如何使用它的更多信息。
  3. 現在您可以對體系結構的流程做出假設。
  4. 然後,您可以運行該應用程序並檢查一些日誌,這會讓您瞭解類和功能流。
  5. 然後,您可以開始調試分配給您的代碼/模塊。

這將使您現在可以更好地進行任何更改。