程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> Effective C#原則48:了解更多的工具和資源(1)

Effective C#原則48:了解更多的工具和資源(1)

編輯:關於C語言

對於C#以及.Net來說這是激動人心的時候。這些工具目前還是比較新的,整 個社區都在學習如何使用這些工具。一些資源可以幫助你提高你的知識,以及為 .Net和C#創建一個更大的知識社區。這些工具是我每天都向C#開發人員推薦的。 關於C#實踐的全部內容還在寫作當中,跟進它們而且不斷了解相關的內容。

第一個應該在每一個C#開發人員的工具箱的工具是NUnit, 它可以在 www.nunit.org網站上找到。NUnit是一個自動進行單元測試的工具,功能和 JUnit很像。和其它大多數開發人員一樣,我討厭寫測試代碼並且自己測試。 NUnit讓這些進程都變得很高效,在你有規律的使用這些工具後,可以保證你會 習慣測試你所有的C#類。不管什麼時候當我創建了一個類庫工程時,我都會添加 一個NUnit測試工程,而且把自動生成的測試做為一部分添加進來。我添加一個 以創建和運行測試的配置,這樣可以在每次編譯時進行測試。然後,我可以轉換 活動的配置來控制是否要讓單元測試做為正規程序的一部份存在。默認情況下, 我運行它們。當我須要進行UI測試時,我會轉換到另一個配置上。

在附帶的使用NUnit時,你可以通過檢測NUnit的源代碼學到一些有意思的技 術。NUnit使用一些高級的反射習慣來加載和測試你的程序集。它使用特性來查 找測試包,測試用例,以及每個測試用例的期望結果(參見原則42)。這是一個非 常不錯的例子,可以告訴你如何使用這些技術來創建可以自己動態配置的工具, 而且它可以廣泛的應用。

接來下是FXCop,這是一個免費的工具,可以從 GotDotNet(www.gotdotnet.com)上得到。FXCop 分析你的程序集裡的IL,看它是 否與實踐的原則相違背,以及報告這些違例的地方。每一個原則都有一個可靠的 公制規范,以及使用這一原則的原因。如本書裡所有推薦的原則一樣,一些文檔 中有一個關於某一原則的簡短理由。你可以斷定這些實際的問題是否遵守這些建 議。同樣你也可以配置是否把每一個原則都應用到項目中。我並不贊成FXCop 中 的一些原則,而且我在本書前面已經說明了原因。然而,像NUnit一樣,FXCop 可以成為你創建的正規程序的一部分。每次編譯後,可以有一個編譯後步驟,可 以用FXCop 來分析你選擇的原則。圖6.1展示了一個從FXCop裡輸出的例子。盡管 一些推薦並不是我喜歡的(例如有一個是讓每一個程序集應該是讓COM見的),但 它確實是一個有用的工具,因為它讓你思考很多你已經默認的決定。

圖6.1,FXCop分析的一個項目:

Figure 6.1. FXCop analyzing a project.

[VIEw full size image]

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved