前言概述:
微軟的腳步一直都很快,經常發現很多技術還沒學就已經過時了(可能是本 人學習能力低下);作為研發個人認為應該站在技術的前沿,一定要跟上新技術 的腳步(沒辦法,不學這些東西,過一段時間飯碗要保不住的);
從2002開始做開發,一直以來都在用vs.net(c#),可以算的上使用.net的一 個老程式員了,可是回頭看看,居然對.net很多都不瞭解,或者是一知半解;( 汗如泉湧)作為一個用了5,6年.net開發的程式員,居然只知道頁面放控制項要整 齊好看,UI資料傳遞給業務層處理,然後調用資料層訪問(工作主要處理內容) ,很長一段時間不知道asp.net為何物(以前一直做winform),開發使用的最原 始的.net內建IDE工具,沒有開發任何協助工具輔助,對架構設計沒什麼概念,項目 管理不知如何下手,測試全靠手工點介面,效能最佳化沒有效果,資料事務沒有保 障,安裝部署從來不知道怎麼弄,代碼重構沒有幹過,設計模式只知道工 廠......
實在有太多東西不懂,(省略符號包含的內容太多)這兩年剛開始接觸asp.net 開發,一個人摸著石頭過河,走了不少彎路,到現在還在摸索,感覺好多基礎的 東西都是新的;對自己能力極度懷疑的情況下,同時對微軟(當然包括其他WEB 技術供應商)這些牛人們產生極度的憤慨,沒事搞出那麼多技術,讓我還怎麼活 (能力較差,性格懶散類型),學好一個技術(點)還有N+1個在後面排著;
這兩年忙著裝修,娶媳婦(全是偷懶的借口),原來的一點技術上積累的老 底已經過時,很多都用不上了,直接導致一個嚴重的後果:近兩年沒漲過工資, 還要當心失業的問題(一家老小啊,還有萬惡的銀行貸款壓迫),在諸多壓力下 ,決定徹底改造,重新做人,爭取早日刑滿釋放,TNND,應該說金盆洗手(攢個 百八十萬的,當然要算美金才行,這社會RMB不經花),於是乎,決定從基礎學 起,開始這個C#3.0曆程,希望整理的這些資料能給各位有一點點協助!
一.C# 3.0語言主要增強點
• 隱含類型局部變數
• 擴充方法
• 對象與集合初始化器
• 匿名型別
• Lambda運算式
• 查詢運算式( LINQ )
• 運算式樹狀架構
二.隱含類型局部變數
先來看看例句:
var i = 5;
var h=23.56;
var s = “C Sharp";
var intArr = new[] {1,2,3,4} ;
var a = new[] { 1, 10, 100, 1000 };
"var"這個關鍵字是不是很眼熟,javascript中經常用到(互相學 習現在比較常見了),當然C#中var和javascript的var差別還是比較大。
1.var只能作為局部變數使用;
就是說var只能定義在一個方法裡面,或者foreach,for,using等語句裡 面:
public class VarTest
{
private void test()
{
var i = 0;
}
}