.NET學習筆記(1)— C#學習路線圖

目錄
一:引言
二:.NET技術體系
三:經常使用工具彙總
四:學習資源彙總
五:書籍推薦
六:關於閱讀技術書籍的經驗
七:總結
 

一:引言前端

由於工做調整,從PHP開發零基礎轉型到.NET開發,前期沒有太多空閒時間去系統學習。只好獨闢蹊徑,尋找快速掌握知足當前需求的方法,和你們分享:數據庫

<一>:先蒐集.NET平臺重點知識點的概念名稱,而後經過網絡蒐集該知識點的學習資料,儘量宏觀地瞭解這個全新技術體系的語法結構,涉及的編程練習題反覆練習;編程

<二>:逐行閱讀工程源代碼,再經過網絡學習遇到的知識盲點,而後把零散的知識點先記錄到學習筆記中,後續再統一整理;windows

可想這份挑戰並不輕鬆,但由於是本職工做,基本一天全部精力都在學習、思考這些新知識,代碼和筆記也會反覆閱讀不少遍。這個體驗的過程當中,我以爲最重要的收穫是:工做中,在時間和精力有限的狀況下,先知足當前的需求是最重要的,也就是完成大於完美。另外一方面,明確一個目標,制定對應的計劃,保持好心態,盡最大努力堅持下去也很重要。設計模式

 

二:.NET技術體系數組

1:.NET介紹安全

.NET平臺的核心技術爲:通用語言運行時(CLR:Common Language Runtiome)、基類庫(BCL:BaseClass Library)、.NET語言及VisualStudio.NET,CLR和BCL都集成在.NET開發框架軟件.NET Framework裏面(win系統自帶),服務器

.NET技術體系沿襲的是微軟的技術路線,因此主要面向windows操做系統,基於.NET技術開發的常見軟件類型有:網絡

1》:WinForm/WPF技術開發基於Windows平臺的客戶端軟件;架構

2》:asp.net技術開發的網站;

3》:C#語言編譯的Dll文件或者COM組件;

它主要由這幾個部分組成:編程基礎知識、Web編程、桌面編程以及數據訪問技術。下面從幾個概念介紹來構築.NET技術體系的整體狀況:

 

2:C#語法

C#做爲.NET體系最經常使用的開發語言,首先它是一門編譯型語言,也是一門類型安全的面嚮對象語言,它依賴.NET Framework運行。C#的語法特性主要包括屬性、枚舉、值類型和引用類型(轉換)、集合、結構以及Lambda表達式、LINQ、WPF、WebSercice、WCF、Win服務等,能夠查閱C#關鍵字列表看一下。關於變量命名、方法傳參、數組、流程控制和循環控制、類的繼承、派生、多態這些基本是各個語言公共具備的特性,可參閱其餘教程。

 

3:asp.net站點開發

asp.net是.NET體系的一部分,它綜合了HTML、CSS、JavaScript以及C#語言開發網站,asp.net支持三種開發模式:

WebPage(單頁面模型)

WebForms(事件驅動模型)

MVC

WebPage是過去那種流程化處理的頁面,服務器腳本和前端代碼混合。WebForms增長了控件機制,支持編寫自定義控件。

 

4:Winform軟件開發

(待續)

5:數據訪問技術

(待續)

6:調試和錯誤處理

(待續)

 

 三:經常使用工具彙總

VisualStudio(IDE集成開發工具)

MiscrosoftSQL Server(關係型數據庫)

IIS/IISEpress(Web服務器)

ILSpy(反編譯工具)

NuGET(包管理器)

VSS/TFS(源代碼版本管理、團隊協做)

 

四:學習資源彙總

Learning hard--微軟C#方向的MVP(http://www.cnblogs.com/zhili/
Jax技術博客(http://www.cnblogs.com/Jax/
魚·後花園的技術博客(http://www.fishlee.net/
小魚兒-fly技術博客(http://www.cnblogs.com/jyfly1984/)
MeteorSeed的博客園--C#學習筆記系列(http://www.cnblogs.com/MeteorSeed)
張善友的博客園(http://www.cnblogs.com/shanyou/) 
blsong的博客園(http://www.cnblogs.com/blsong/) 
 
五:書籍推薦:
《C#入門經典》
《C#高級編程》
《ASP.NET MVC 5高級編程》
《深刻理解C#》
《Learning hard C#學習筆記》
 
六:關於閱讀技術書籍的經驗:
一本技術書整體上是用做者本身的思惟方式和語言風格去描述一類技術的知識點和原理,大部分技術書籍涵蓋的內容較多,那麼串聯知識模塊而且造成一個整體的知識體系就很是關鍵,有下面幾種途徑來達到串聯知識的目的:
1:理解書籍的目錄章節劃分;
2:用筆劃線、勾選等記錄知識要點,而後再天天固定時間溫習要點部分並寫成學習筆記;
3:隔段時間再總體溫習學習筆記,疑問處再反過來翻閱已看完的書籍;
不少時候尤爲學習一門新技術的時候,大部分人根本不可能一次性領會所有內容,包括一些語法特徵,這門語言爲何要設計成純面向對象,PHP爲何是解釋執行但依然那麼流行?C#的頁面爲何設計成事件驅動,它的實時編譯機制的細節是怎樣的,頁面生命週期的執行細節又是怎樣?另外一方面,仍是要大量結合編程練習,只有在一段程序或者一個完整項目中(程序應用場景),才能全面、深入領會從語法細節到設計模式和架構的知識,並最終造成本身的知識庫,而不是做者的一本書。

 

七:總結

不一樣語言的程序開發中,大部分基礎功能用到的語言特性很相近,好比字符串的拼接和拆分、數組的使用、循環遍歷,以及讀寫文件(txt、XML)、數據庫增刪改查。從新學習一門新語言,就能夠先蒐集這門語言獨特的語法特性,結合編程練習,達到必定的熟悉程度,能夠嘗試去練習這些語法公共部分相關的編程練習,這樣更容易保證用最短的時間解決當前問題,在後續的漫長時間內,在逐漸深刻學習掌握語法細節,並領會背後的設計思想。

相關文章
相關標籤/搜索