- C#從入門到精通(第2版)
- 龍馬高新教育策劃 國家863中部軟件孵化器編著
- 416字
- 2019-01-02 05:28:58
前言
“從入門到精通”系列是專為初學(xué)者量身打造的一套編程學(xué)習(xí)用書,由知名計算機圖書策劃機構(gòu)“龍馬高新教育”精心策劃而成。
本書主要面向C#初學(xué)者和愛好者,旨在幫助讀者掌握C#基礎(chǔ)知識、了解開發(fā)技巧并積累一定的項目實戰(zhàn)經(jīng)驗。當(dāng)讀者系統(tǒng)地學(xué)習(xí)完本書內(nèi)容之后,就可以驕傲地宣布—“我是一名真正的C#程序員了!”。
為什么要寫這樣一本書
荀子曰:不聞不若聞之,聞之不若見之,見之不若知之,知之不若行之。
實踐對于學(xué)習(xí)的重要性由此可見一斑。縱觀當(dāng)前編程圖書市場,理論知識與實踐經(jīng)驗的脫節(jié),是很多C#圖書的寫照。為了杜絕這一現(xiàn)象,本書立足于實戰(zhàn),從項目開發(fā)的實際需求入手,將理論知識與實際應(yīng)用相結(jié)合。目標就是讓初學(xué)者能夠快速成長為初級程序員,并擁有一定的項目開發(fā)經(jīng)驗,從而在職場中擁有一個高起點。
C#的最佳學(xué)習(xí)路線
本書總結(jié)了作者多年的教學(xué)實踐經(jīng)驗,為讀者設(shè)計了最佳的學(xué)習(xí)路線。

本書特色
▲ 零基礎(chǔ)、入門級的講解
無論讀者是否從事計算機相關(guān)行業(yè),是否接觸過C#,是否使用C#開發(fā)過項目,都能從本書中找到最佳起點。
▲ 超多、實用、專業(yè)的范例和項目
本書結(jié)合實際工作中的范例,逐一講解C#的各種知識和技術(shù)。最后,還以實際開發(fā)項目來總結(jié)本書所學(xué)內(nèi)容,幫助讀者在實戰(zhàn)中掌握知識,輕松擁有項目經(jīng)驗。
▲ 隨時檢測自己的學(xué)習(xí)成果
每章首頁羅列了“本章要點”,以便讀者明確學(xué)習(xí)方向。每章最后的“實戰(zhàn)練習(xí)”則根據(jù)所在章的知識點精心設(shè)計而成,讀者可以隨時自我檢測,鞏固所學(xué)知識。
▲ 細致入微、貼心提示
本書在講解過程中使用了“提示”、“注意”、 “技巧”等小欄目,幫助讀者在學(xué)習(xí)過程中更清楚地理解基本概念、掌握相關(guān)操作,并輕松獲取實戰(zhàn)技巧。
超值光盤
▲ 17小時全程同步教學(xué)錄像
涵蓋本書所有知識點,詳細講解每個范例及項目的開發(fā)過程及關(guān)鍵點。幫助讀者更輕松地掌握書中所有的C#程序設(shè)計知識。
▲ 超多王牌資源大放送
贈送大量王牌資源,包括38小時C#項目實戰(zhàn)教學(xué)錄像、799頁C#類庫查詢手冊、52頁C#控件查詢手冊、10套超值完整源代碼、56個C#常見面試題及解析電子書、123個C#常見錯誤及解決方案電子書、50個C#高效編程技巧、C#程序員職業(yè)規(guī)劃、C#程序員面試技巧等。
讀者對象
? 沒有任何C#基礎(chǔ)的初學(xué)者
? 有一定的C#基礎(chǔ),想精通C#的人員
? 有一定的C#基礎(chǔ),缺乏C#實戰(zhàn)經(jīng)驗的人員
? 大專院校及培訓(xùn)學(xué)校的老師和學(xué)生
光盤使用說明
01. 光盤運行后首先播放片頭動畫,之后進入光盤的主界面。其中包括【課堂再現(xiàn)】、【C#項目實戰(zhàn)教學(xué)錄像】兩個學(xué)習(xí)通道,和【范例源碼】、【實戰(zhàn)練習(xí)答案】、【贈送資源】、【幫助文件】、【退出光盤】五個功能按鈕。

02. 單擊【課堂再現(xiàn)】按鈕,進入多媒體同步教學(xué)錄像界面。在左側(cè)的章號按鈕上單擊鼠標左鍵,在彈出的快捷菜單上單擊要播放的節(jié)名,即可開始播放相應(yīng)的教學(xué)錄像。

03. 單擊【C#項目實戰(zhàn)教學(xué)錄像】按鈕,可以查看相關(guān)視頻文件,在打開的文件夾中包含了教學(xué)錄像及其實戰(zhàn)源碼,在【同步視頻】文件夾下進入子文件夾,雙擊要播放的視頻,即可使用電腦中的播放器進行播放。

04. 單擊【范例源碼】按鈕,可打開本書范例源碼文件夾。
05. 單擊【實戰(zhàn)練習(xí)答案】按鈕,可在打開的文件夾中看到實戰(zhàn)練習(xí)答案。
06. 單擊【贈送資源】按鈕可以查看隨本書贈送的資源。
07. 單擊【幫助文件】按鈕,可以打開“光盤使用說明.pdf”文檔,該說明文檔詳細介紹了光盤在電腦上的運行環(huán)境及運行方法等。
08. 單擊【退出光盤】按鈕,即可退出本光盤系統(tǒng)。網(wǎng)站支持
更多學(xué)習(xí)資料,請訪問www.51pcbook.cn。
創(chuàng)作團隊
本書由龍馬高新教育策劃,國家863中部軟件孵化器組織編寫,鄒東堯任主編,朱會東、王治國任副主編。參加編寫的人員分工如下:第6~8章由張啟坤編寫,第9章和第10章由吳懷廣編寫,第11~15章由王治國編寫,第16~20章由朱會東編寫,第21~24章由黃燕編寫,第0~5章及第25~27章由鄒東堯、李晨編寫。參加資料整理的人員有韓騰飛、薛楓、孔萬里、李震、趙源源、喬娜、周奎奎、王果、陳小杰、左琨、鄧艷麗、崔姝怡、侯蕾、左花蘋、劉錦源、普寧、王常吉、師鳴若、鐘宏偉、陳川、劉子威、徐永俊、朱濤和張允等。
在編寫過程中,我們竭盡所能地將最準確的C#理解和感悟呈現(xiàn)給讀者,但也難免有疏漏和不妥之處,敬請不吝指正。若您在學(xué)習(xí)過程中遇到困難或疑問,或有任何建議,可發(fā)送電子郵件至zhangyi@ptpress.com.cn。
編者
第0章 C#學(xué)習(xí)指南
要想真正掌握C#,就必須知道這門語言的來源和歷史。本章是學(xué)習(xí)C#語言的第0章,是讀者掌握C#這門語言的啟蒙課。通過對本章的學(xué)習(xí),讀者將初步了解C#語言的來源、C#的基礎(chǔ)思想、C#的技術(shù)體系及C#應(yīng)用領(lǐng)域和前景,除此之外,還可以通過C#學(xué)習(xí)經(jīng)驗之談和C#學(xué)習(xí)路線圖進一步了解C#。
本章要點(已掌握的在方框中打鉤)
□ C# 的來源
□ C#的基本思想
□ C#的技術(shù)體系
□ C#應(yīng)用領(lǐng)域和前景
□ C#學(xué)習(xí)經(jīng)驗談
□ C#學(xué)習(xí)路線圖
0.1 C# 的來源
C#編程語言是微軟公司推出的基于.NET框架的、面向?qū)ο蟮母呒壘幊陶Z言。C#與C、C++、Java有著密切的關(guān)系,是.NET框架中最常用的編程語言。
0.1.1 C#語言的產(chǎn)生背景
1995年,SUN公司推出面向?qū)ο蟮拈_發(fā)語言—Java之后,由于它的跨平臺、跨語言特性,使得越來越多的基于C/C++的開發(fā)人員轉(zhuǎn)向了Java。很快,微軟公司也推出了基于Java語言的編譯器Visual J++,并在短時間內(nèi)升級到了6.0版本。
Visual J++雖然有強大的開發(fā)功能,但主要應(yīng)用在Windows平臺的系統(tǒng)開發(fā)中,因此SUN公司認為Visual J++違反了Java的許可協(xié)議,即違反了Java平臺的中立性,這使得微軟公司處于被動局面。為了改變這一局面,微軟公司提出了進軍互聯(lián)網(wǎng)的龐大計劃—.NET計劃,以及該計劃中的開發(fā)語言—C#。
1998年,Anders Hejlsberg和他的微軟開發(fā)團隊開始設(shè)計C#語言(C#英文讀做C Sharp)。
0.1.2 C#語言的發(fā)展過程
C#語言的發(fā)展主要經(jīng)歷了以下階段。
2000年微軟公司發(fā)布了C#語言的第一個版本,它是一種全新且簡單、安全、完全面向?qū)ο蟮某绦蛟O(shè)計語言,是專門為.NET的應(yīng)用而開發(fā)的語言,它吸收了C++、Visual Basic、Delphi、Java等語言的優(yōu)點,C#基本上繼承了C語言的語法風(fēng)格,又從C++那里繼承了面向?qū)ο蟮奶卣鳌M瑫r,C#和Java也極其相似。
2003年,微軟公司發(fā)布了C# 1.2,Visual Studio.NET 2003使用的是C# 1.2。
2005年,微軟公司發(fā)布了C# 2.0,Visual Studio.NET 2005使用的是C# 2.0。
2007年,微軟公司發(fā)布了C# 3.0,Visual Studio.NET 2008使用的是C# 3.0。
2010年,微軟公司發(fā)布了C# 4.0,Visual Studio.NET 2010使用的是C# 4.0。
2013年,微軟公司發(fā)布了C# 4.5,Visual Studio.NET 2013使用的是C# 4.5。
C# 2.0在C# 1.2的基礎(chǔ)上,增加了泛型、匿名方法、迭代、部分類等。C# 3.0在C# 2.0的基礎(chǔ)上,增加了擴展方法、Lambda表達式、查詢表達式、自動實現(xiàn)的屬性、匿名變量等。C# 4.0在C# 3.0的基礎(chǔ)上,增加了dynamic關(guān)鍵字、默認參數(shù)、可選參數(shù)等。C# 5.0在C# 4.0的基礎(chǔ)上,增加了帶參數(shù)的泛型構(gòu)造函數(shù)、支持null類型運算、case支持表達式、擴展屬性和綁定運算符等。
0.2 C#的基本思想
C#的基本思想即面向?qū)ο蟆C嫦驅(qū)ο蟮木幊淘O(shè)計(Object Oriented Programming,OOP)旨在將實際世界中存在的事物或概念通過抽象的方法模擬到計算機程序中,盡量使用人的自然思維,著重強調(diào)人的正常思維方式和原則。
面向?qū)ο蟮木幊淘O(shè)計是將數(shù)據(jù)及處理這些數(shù)據(jù)的操作都封裝(Encapsulation)到一個稱為類(Class)的數(shù)據(jù)結(jié)構(gòu)中。面向?qū)ο蟮木幊淘O(shè)計具有封裝、繼承和多態(tài)性等特點。封裝用于隱藏調(diào)用者不需要了解的信息;繼承則簡化了類的設(shè)計;多態(tài)性是指相同對象收到相同信息,或不同對象收到相同信息時,產(chǎn)生不同的行為方式。
0.3 C#的技術(shù)體系
C#是一種全新的、面向?qū)ο蟮木幊陶Z言。它依附于.NET Framework架構(gòu),它高效的運行效率、簡單易于理解的語法,加之強大的編譯器支持,使得程序的開發(fā)變得異常迅速。它的技術(shù)體系主要有以下幾個方面。
(1) 徹底的面向?qū)ο笤O(shè)計,C#具有面向?qū)ο笳Z言所擁有的一切特性,即封裝、繼承和多態(tài)。C#與Web應(yīng)用緊密地結(jié)合,支持絕大多數(shù)的Web標準,例如,HTML、XML、SOAP等。
(2) Windows Form技術(shù),用來開發(fā)Windows桌面程序,數(shù)據(jù)提供程序管理提供易于連接OLEDB和ODBC數(shù)據(jù)源的數(shù)據(jù)控件,包括Microsoft SQL Server、Microsoft Access、Jet、DB2及Oracle等,通過強大的控件庫可以快速開發(fā)出桌面應(yīng)用程序。
(3) WPF技術(shù),微軟的新一代圖形系統(tǒng),運行在.NET Framework 3.0及以上版本,為用戶界面、2D/3D圖形、文檔和媒體提供了新的操作方法。
(4) WebForm技術(shù),是Windows使用C#語言來開發(fā)Web應(yīng)用程序的工具,它封裝了大量的服務(wù)器控件,讓開發(fā)Web變得簡單。
(5) MVC技術(shù),是ASP.NET編程模式的一種,使用模型—視圖—控制器設(shè)計創(chuàng)建Web應(yīng)用程序,這種分層的設(shè)計使程序員能夠在復(fù)雜性高的程序中各司其職,專注于自己的方面。
0.4 C#應(yīng)用領(lǐng)域和前景
C#語言出身于微軟公司,C#主要用來構(gòu)建在.NET Framework上運行的各種安全、可靠的應(yīng)用程序。它的應(yīng)用領(lǐng)域十分廣泛。
1. Web應(yīng)用程序
Web應(yīng)用包括ASP.NET應(yīng)用程序、Windows窗體應(yīng)用程序。
2.數(shù)據(jù)庫應(yīng)用程序開發(fā)
C#中的ADO.NET技術(shù)適合進行數(shù)據(jù)庫應(yīng)用程序的開發(fā)。數(shù)據(jù)庫應(yīng)用程序可理解為業(yè)務(wù)管理軟件,具體應(yīng)用如圖書管理系統(tǒng)、人事管理系統(tǒng)等。
3.桌面應(yīng)用程序
桌面應(yīng)用包括控制臺應(yīng)用程序、Windows窗體應(yīng)用程序等。
4.插件技術(shù)
插件技術(shù)編程在計算機軟件中廣泛運用,它提高了軟件的擴展性,延長了軟件的生命周期,在一定程度上是對軟件功能的擴充。
5.移動設(shè)備應(yīng)用程序
移動設(shè)備應(yīng)用程序即嵌入式開發(fā)領(lǐng)域,主要是面向Windows CE等微軟的產(chǎn)品。
6.游戲軟件開發(fā)
C#語言通過與XNA游戲開發(fā)框架相結(jié)合,可以使開發(fā)出的游戲效果更加絢麗。
上面介紹了幾個主要的C#應(yīng)用領(lǐng)域,實際上C#語言幾乎可以應(yīng)用到程序開發(fā)的任何領(lǐng)域。那么C#的前景怎么樣?根據(jù)2014年9月Tiobe編程語言排行榜可以看出,C#語言繼續(xù)呈上升趨勢,同比上升一位,排在了所有語言的第五位,發(fā)展趨勢良好。下圖所示為2014年9月Tiobe編程語言排行榜及C#語言發(fā)展趨勢。

0.5 C#學(xué)習(xí)經(jīng)驗談
C#語言自C/C++演變而來,它的語法和Java語言一樣,更加簡潔。C#語言是完全按照面向?qū)ο蟮乃枷雭碓O(shè)計的,且與Web應(yīng)用和Windows應(yīng)用緊密結(jié)合。那么怎樣學(xué)習(xí)程序設(shè)計,學(xué)好C#語言?現(xiàn)將筆者的學(xué)習(xí)經(jīng)驗與讀者朋友分享。
1.培養(yǎng)興趣,明確學(xué)習(xí)目標
“興趣是最好的老師。”如果把編寫程序看做一種愛好,就不會覺得枯燥無味。在確定學(xué)習(xí)編程之前,需明確自己的學(xué)習(xí)目標,制定可行的計劃,切忌三天打魚兩天曬網(wǎng)。
2.打好基礎(chǔ),循序漸進
“水之積也不厚,則其負大舟也無力。”在學(xué)習(xí)C#編程的路上要腳踏實地,一步一個腳印。先學(xué)好基礎(chǔ)知識,再循序漸進地學(xué)習(xí)一些高級的特性。
3.多實踐,多交流
“讀十篇不如做一篇。”程序設(shè)計必須要自己動手動腦上機調(diào)試程序,切忌紙上談兵。在初學(xué)編程時,一定會遇到許多問題。不要慌張,要多交流、多請教,吸取別人的長處,豐富自己的編程經(jīng)驗,提高編程水平。要注意培養(yǎng)自己的邏輯思維能力,掌握編程思想,當(dāng)然,做到這一點,需要不斷實踐、思考、交流和總結(jié)。
4.善于利用資源
“泰山不讓土壤,故能成其大;河海不擇細流,故能就其深。”在學(xué)習(xí)C#的過程中,要充分利用網(wǎng)絡(luò)資源,比如大型搜索引擎網(wǎng)站(百度、谷歌等)、知名的論壇、博客園等。多讀好書,多參考程序代碼,并從中分析,歸納出好的方法、經(jīng)驗為己所用。
5.養(yǎng)成良好的編程習(xí)慣
“習(xí)慣決定命運,細節(jié)決定成敗。”良好的編程習(xí)慣對于編程能力的提高也是非常重要的。在編程時要有良好的風(fēng)格,源代碼的邏輯簡明清晰、易讀易懂是好程序的重要標準。
6.堅定目標,樹立信心
“成功的奧秘在于目標的堅定。”在學(xué)習(xí)編程過程中,要堅持堅持再堅持!
0.6 C#學(xué)習(xí)路線圖
第一步為入門階段,主要學(xué)習(xí)C#基礎(chǔ)語法,如數(shù)據(jù)類型、變量與常量、字符串與表達式、數(shù)組和集合、程序的基本結(jié)構(gòu)、異常處理與程序調(diào)試、常用數(shù)據(jù)類型的用法,對C#面向?qū)ο缶幊逃兴J識的同時還要了解更高級的事件和委托。入門時,可編寫一些控制臺程序來鞏固這些基礎(chǔ)。
第二步為提高階段,主要包括Windows應(yīng)用程序高級控件、C#面向?qū)ο蟾呒壖夹g(shù)、ADO.NET數(shù)據(jù)訪問技術(shù)、報表與打印、文件及數(shù)據(jù)流技術(shù)、線程的使用、網(wǎng)絡(luò)編程技術(shù),初步了解項目部署等。
第三步,有了第一步和第二步的基礎(chǔ),進行一些項目實戰(zhàn)練習(xí)。在練習(xí)中查漏補缺,總結(jié)經(jīng)驗,從而掌握C#,并充分發(fā)揮C#的語言優(yōu)勢。
- MacTalk 跨越邊界
- OpenNI體感應(yīng)用開發(fā)實戰(zhàn)
- 掌握分布式跟蹤:微服務(wù)和復(fù)雜系統(tǒng)性能分析
- 中文版Revit 2018基礎(chǔ)培訓(xùn)教程(全彩版)
- Android應(yīng)用安全防護和逆向分析
- Swift從入門到精通(正式版)
- 自己動手構(gòu)造編譯系統(tǒng):編譯、匯編與鏈接
- 服務(wù)端開發(fā):技術(shù)、方法與實用解決方案
- 從隱秩序到顯規(guī)則:工程體系基于V++規(guī)則引擎的生態(tài)演進
- 偉大的小細節(jié):互聯(lián)網(wǎng)產(chǎn)品設(shè)計中的微創(chuàng)新思維
- 深入淺出數(shù)據(jù)結(jié)構(gòu)與算法(微課視頻版)
- 測試開發(fā)實戰(zhàn)教程
- UG NX 8.0實例教程(第2版)
- 獵豹行動:硝煙中的敏捷轉(zhuǎn)型之旅
- x86匯編與逆向工程:軟件破解與防護的藝術(shù)