詳解學習C#的方法和步驟

紫鳳發表於2013-07-16

如果你已經有較多的物件導向開發經驗,跳過以下這兩步:

第一步 掌握一門.NET面嚮物件語言,C#或VB.NET。

強烈反對在沒系統學過一門物件導向語言的前提下去學ASP.NET。 ASP.NET是一個全物件導向的技術,不懂物件導向,那絕對學不下去!

第二步 對.NET Framework類庫有一定的瞭解

可以通過開發Windows Form應用程式來學習.NET Framework。ASP.NET是建構在.NET Framework之上的技術,你對.NET Framework瞭解得越深,學習ASP.NET就越快。

下面簡單列出幾個對掌握ASP.NET非常重要的概念:

物件的記憶體模型,委託,事件,多執行緒,程式集和應用程式域,安全模型 .NET Framework當然還有許多其它的東西,但不理解與把握清楚上述這些東西,是很難真正把握ASP.NET的。

出於急迫的心情與現實的考慮,不少人沒有紮實的物件導向基礎就想直接學習ASP.NET,其結果只能是欲速則不達。

在具備了物件導向基礎之後,以下是具體的學習ASP.NET技術步驟。

第一步:學習HTML與CSS

這並不需要去學一大堆的諸如Dreamweaver,Firework之類的各種網頁設計工具,關鍵是理解HTML網頁巢狀的block結構與CSS的 box模型。許多ASP.NET控制元件最後都必須轉化為HTML。而且,div+CSS是當前主流的網頁佈局模型。

學習這部分時,關鍵在於理解概念,而不需要將精力花在美化頁面的許多技巧上,那是網站美工的工作,不是程式設計師的工作。

推薦圖書:

   enter image description here         enter image description here

  HTML5與CSS3設計模式    HTML5與CSS3基礎教程(第7版)

第二步:學習JavaScript的DOM

不是java,它主要執行於瀏覽器端。可以完成許多工作,功能也很強大:比如它將客戶端網頁中的HTML元素看成一棵樹,可以編寫程式碼訪問並修改樹節點,動態生成新的HTML程式碼,從而達到動態修改網頁顯示特性的目的。

在目前的網站開發中用得很多,非常重要。

另外,它也是目前非常流行的AJAX技術的基礎。

推薦圖書:

enter image description here

JavaScript DOM程式設計藝術(第2版)

第三步:學習計算機網路原理

找一本大學<計算機網路>教材,重點看看它的有關網際網路的部分,瞭解一些域名解析和HTTP協議等知識。這是進行網際網路開發的理論基礎。

推薦閱讀:

enter image description here

HTTP權威指南

第四步:學習ASP.NET表示層技術,會設計Web頁面

需要結合先前打好的物件導向技術的基礎,至少掌握以下內容:

  • (1)各種Web控制元件的使用方法
  • (2)理解資訊在網頁中的傳送方式,比如Cookie,ViewState,Session等的使用。
  • (3)ASP.NET應用程式與網頁的生命週期,以及相關物件(比如httpcontext,response,request)的用途。
  • (4)ASP.NET實現事件驅動的內幕
  • (5)自定義使用者控制元件

再次強調一下,沒有物件導向基礎,很難掌握上述技術,就只能被這些東東牽著鼻子走了,會很被動。

推薦閱讀:

 enter image description here        enter image description here

C#圖解教程(第4版)      深入理解C#(第2版)

第五步 掌握資料庫技術

具體地說,要學習以下內容:

  • (1)學會使用SQL Server 2008:不要求精通它的各種工具與管理配置技術,但至少知道如何連線,如何建表,如何建立儲存過程
  • (2)學習ADO.NET,掌握使用程式碼人工訪問資料庫(別用VS2005的嚮導)的方法

  • (3)學習資料繫結控制元件的使用

推薦閱讀:

enter image description here

深入SQL Server 2008

第六步 理解多層架構

這時,先前在物件學習階段涉及到的程式集與應用程式域等就派上用場了,現在,網站架構大多采用多層架構:表示層、業務邏輯層、資料存取層以及資料庫本身。

可以先上網找一些多層架構的資料看,再找一個現成的比較複雜的開源ASP.NET專案分析一下其架構就差不多了。基本上都是一個套路,到處應用。

有的朋友問:學習架構是不是必須學習設計模式。

我的看法是:不必!當然,你如果學習過設計模式,那當然更好。但在實際開發中,如果只想著機械地套用某種模式,反而起不到好的結果。我的觀點:在學習設計模式時要多思多悟,其思想就會漸漸地融入你的大腦,在真實的設計實踐中,忘掉所有的寫在書上的模式,一切從實際出發,相信你的直覺,只要達到設計要求的方案就是可行的方案,事實上,你這樣做了之後,回過頭來再看,會發現你的設計往往暗合設計模式的理論。

推薦閱讀:

 enter image description here     enter image description here

 設計模式沉思錄       分析模式

 enter image description here     enter image description here       enter image description here

面向模式的軟體架構卷3  面向模式的軟體架構卷4     面向模式的軟體架構卷5

第七步 學習XML與Web Service

先了解XML的基礎知識,找本講XML的書看一下就差不多了,然後,再學習Web Service。Web Service其實可類比為遠端方法呼叫(以XML格式表達的呼叫資訊)。

學 到了這裡,如果你還有興趣,不妨再去看看SOA,不過SOA的資料都是理論與概念,看起來比較鬱悶,而且離實際開發可能比較遠。所以,這是可選項。

第八步 學習AJAX

學習AJAX的主要目的是建立具有更豐富特性的Web表示層,而經過前面七步的學習,到此再學習AJAX已水到渠成,所有的基礎都已具備,不會有太大的問題了。

在基礎未具備的前提下直接學AJAX,就象“浮沙之上築高臺”,所以,將AJAX的學習次序安排在這裡。

第九步 學習RIA技術

RIA:Rich internet application,可看成是將C/S與B/S優點合二為一的嘗試。就具體技術來說,主要指微軟的Silverlight(WPF_E),畢竟前頭一路行來都是微軟路線。

至此,可行走江湖了。

在學習C#的道路上,還有一本書,幾乎囊括了目前為止C#的所以知識,認真品讀這本書,練好“九陰真經”才可打遍天下哦!

enter image description here

   《精通C#(第6版)》

內容簡介:

全書分為八部分內容:C#和.NET平臺、C#核心程式設計結構、C#物件導向程式設計、高階C#程式設計結構、用.NET程式集程式設計、.NET基礎類庫、WPF和ASP.NET Web Forms。第6版是對第5版的進一步更新和完善,內容涵蓋了最先進的.NET程式設計技術和技巧,並準確呈現出C#程式語言的最新變化和.NET 4.5 Framework的新特性。

《精通C#(第6版)》由微軟C# MVP Andrew Troelsen編寫,第6版專門針對C# 5.0和.NET 4.5進行了細緻入微的修訂,是各層次.NET 開發人員的必藏之作。

本文的主線由網路文章構成,地址:http://blog.sina.com.cn/s/blog_571d0ffe010009q2.html

相關文章