[VS2010] Visual Studio 的程式碼成員提示強化功能 (Intellisense Improvement)

[VS2010] Visual Studio 的程式碼成員提示強化功能 (Intellisense Improvement)

Visual Studio 系列開發工具要說是最令人激賞的功能之一,若要投票的話,筆者認為程式碼成員自動完成的功能一定是排第一,這個被稱為 Intellisense 的功能,讓程式開發人員減少(或不用)記憶成員的拼字,只要敲幾個字就可以得到以輸入文字搜尋對應到的成員清單,只要直接選擇清單中的成員,就可以自動幫你填到程式碼中,這個在 Visual Studio .NET 開始出現的功能,確實在一定程度內增進了開發人員的生產力(而且非常明顯),當然隨著 Visual Studio 開發工具的進步,Intellisense 也不斷的在強化它的功能,同時其他不少開發工具也開始加入這類型的功能,例如 Eclipse。

 

Visual Studio 2010 的 Intellsense 強化部份,最明顯的就是效能,筆者試用過 Visual Studio 2010 的 Code Intellisense 時,就有明顯的感受,而且它會直接以關鍵字檢索方式列舉成員,而 Visual Studio 2008 是會列舉所有的成員,但會將選取的項目設為已輸入的成員關鍵字,並且成員的比對只有以字串開始的方式來比對(即 %STR 的比對),所以在 Visual Studio 2008 時會看到所有的成員:

 

image

 

不過在 Visual Studio 2010 時,它只會列出符合輸入項目的關鍵字的成員而已,搜尋模式變成 %STR%,這代表不用再列舉出所有的成員,速度變很快:

 

image

 

這個功能也用在型別的搜尋上:

 

image

 

 

另外一個 Visual Studio 2010 的 Intellisense 新功能,則是可以利用大寫命名縮寫 (Pascal Cased) 的方式來搜尋成員,例如若想要搜尋 PageIndexChanging 成員時,只要輸入 PIC,即可找到以該大寫字元為首的成員清單,以 PIC 來說,它的搜尋模式則是 %P%I%C%,因此會列出 PageIndexChanging 以及 PageIndexChanged 兩個成員:

 

image

 

筆者針對這個功能做了一個小小的測試,新增一個類別如下列程式碼:

 

image

 

然後在用戶端程式中使用 Visual Studio 2010 的 Intellisense 來列舉成員,當筆者輸入 MD 時,會列出 getMicrosoftHtmlData() 以及 GetMicrosoftHtmlData(),使用的搜尋模式是 %M%D%:

 

image

 

換個方式,輸入 GMHD,它仍然是列舉出 getMicrosoftHtmlData() 以及 GetMicrosoftHtmlData(),因此可以確認它使用的搜尋模式是 %G%M%H%D%

 

image

 

 

 

參考資料:

VS2010 Code Intellisense Improvements:

http://weblogs.asp.net/scottgu/archive/2009/10/22/vs-2010-code-intellisense-improvements-vs-2010-and-net-4-0-series.aspx