2010-10-12 35 views
14

Visual Studio IDE允許我在VB.NET源代碼中掃描未使用的引用。但我的應用程序中還有很多未使用的Imports statements在VB.NET源代碼中查找未使用的「Imports」語句

兩個問題:

  • 有沒有辦法找到未使用Imports語句在我的VB.NET源代碼?
  • 做未使用Imports聲明損害了我的應用程序的性能?
+3

我知道升C有一個「刪除usings」功能,當你右鍵點擊在使用(導入)。也許vb版本也有? – 2010-10-12 12:52:33

回答

16

它根本不會損害運行時性能,這些using directives實際使用的唯一時間是在編譯時。

三個原因,你可能要保持你的進口數量低有:

  • 爲了清楚起見。乍一看,導入是一種有用的方式,可以讓學員瞭解課堂上正在進行的操作類型:不要浪費這個機會! (例如,如果我看到在文件頂部導入了Regex名稱空間,我通常假設其中有一些正則表達式工作)

  • 您擁有的進口越多,出現名稱衝突的可能性就越大一種類型名稱指在兩個不同導入的命名空間中的兩種不同類型)

  • 由於這些指令在編譯時使用,導致大量未使用的導入可能會損害構建時間和/或智能感知性能。 (只是猜測這裏,我不知道智能感知是如何在幕後工作)

如果你想擺脫那些無用的命名空間,我不認爲有任何內置的這種支持Visual Studio(我認爲這就是你所說的「VB.net IDE」),但你可以使用一些第三方工具(例如Resharper)或其他一些IDE(例如Eclipse.net

+5

所有我想補充的是,Resharper等質量工具可以告訴你它們是否被使用(就像查找代碼的用法一樣)。手動方法是刪除一個,看看它是否仍然構建! – Fenton 2010-10-12 12:32:25

3

我相信這個包含是在編譯時完成的,並且只在需求時完成。

換句話說,沒有性能損失。

1

首先,未使用/多餘的進口不要只會影響性能,因爲僅表示靜態編譯​​時的信息。

其次,像ReSharper工具可以幫助你保持你的代碼更易於維護,易於重構,清理過時的東西一樣未使用的導入等