標籤:參數 alt 開發 family 允許 微軟 name bsp 介面
一、工具和方法
學到了一些沒用過的工具和方法:
a)刪除多餘的using指令並排序:一個類頭部的using一般會有很多用不到的,在完成類的編寫後,可以右鍵選擇”組織using”來刪除沒用的using並排序。
複製或刪除一行代碼時不用選中:可以直接把游標置於這一行,直接進行ctrl+c ctrl+x的整行操作。之前用過shift+delete也是整行剪下。
尋找匹配的標記:成對出現的標記如{}、#region #endregion等,把游標放在其中一個上,使用ctrl+]可以跳轉到符號對應的另一半,對於代碼篇幅比較長的場合挺方便的。在html和js代碼中實驗也是可用的。
b)HttpRequester
用於測試介面,在WebAPI開發會用到,可以類比各種類型的請求,並可自訂添加需要提交的請求報文和要求標頭資訊等。
二、C#2.0的新文法特性
a)泛型(Generics):泛型將型別參數的概念引入.NET,型別參數的存在允許將類型的指定延遲到用戶端代碼聲明並執行個體化改類或方法的時候。List<T>便是泛型的應用,T為類型的預留位置,在執行個體化時再具體執行。泛型的主要優點為:編譯時間可以保證型別安全;因為不用做類型轉換,可以有一定的效能提升。
b)泛型委派:如Del委託使用了泛型後,還可以自動識別Notify方法的重載。
c)泛型介面:這目前還沒實際用過。
d)泛型方法:如果返回也是泛型,再加上涉及到泛型的轉換的話,要中轉為object且不保證能成功。感覺不好控制。
e)泛型約束:可以給泛型參數添加約束,可添加的約束類型有:
whereT:struct 實值型別
whereT:class 參考型別
whereT:new() 參數必須有一個public的無參建構函式
whereT:<base class name> 派生自某個基類
whereT:<interface name>> 實現某個介面
whereT:U U為型別參數且T派生自U
寫法為
f)部分類partial
可以讓代碼發布在不同的檔案中,winform和webform的UI代碼和邏輯代碼就使用了partial,最終編譯的時候會把多個部分合并起來。
g)匿名方法
匿名方法本質也是委託,是一種函數式編程的寫法。函數式編程的最大特點就是把方法作為參數和傳回值。既然是委託,就需要先有簽名,匿名方法delCW2比常規的委託delCW1寫起來簡單,與js的函數寫法類似,但還是比js麻煩一點。
學習資料:ASP.NET MVC 企業級實戰 by 鄒瓊俊
《ASP.NET MVC企業實戰》(一) MVC開發前奏