-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
1/19 新書到! 1/12 新書到! 1/5 新書到! 12/29 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Visual C# 2013從入門到精通

( 簡體 字)
作者:John Sharp著類別:1. -> 程式設計 -> .NET -> C#
譯者:牟明福 蘇正泉 周靖 譯
出版社:清華大學出版社Visual C# 2013從入門到精通 3dWoo書號: 40162
詢問書籍請說出此書號!

有庫存
NT售價: 495

出版日:11/5/2014
頁數:656
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787302382638
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
作者序:

譯者序:

前言:

Microsoft Visual C#是一種功能強大、使用簡單的語言,主要面向需要使用Microsoft .NET Framework來創建應用程序的開發者。它在C++和Microsoft Visual Basic的基礎上去蕪存菁,最終形成了一種更加清晰、更富有邏輯的語言。C# 1.0于2001年亮相。幾年后隨著C# 2.0和Visual Studio 2005的問世,語言新增了幾個重要功能,包括泛型、迭代器和匿名方法等。隨同Microsoft Visual Studio 2008發布的C# 3.0添加了更多功能,包括擴展方法、Lambda表達式以及語言集成查詢(Language Integrated Query,LINQ)。2010年發布的C# 4.0繼續增強,改善了與其他語言和技術的互操作性。新增功能包括具名參數和可選參數,另外還有dynamic類型(指示語言的“運行時”對對象進行晚期綁定)。在隨同C# 4.0發布的.NET Framework中,最重要的新功能就是“任務并行庫”(Task Parallel Library,TPL)。可用TPL構建具有良好伸縮性的應用程序,從而快速和簡單地發揮出多核處理器的潛力。C# 5.0則通過async修飾符和await操作符提供了對異步任務的原生支持。
Windows 8是Microsoft近年來最具革命性的一款操作系統。新操作系統支持高度交互式的應用程序,它們能相互分享和協作,還能輕松連接云端服務。Visual Studio 2012開發環境使這些強大功能變得容易使用,大量新向導和增強顯著提高了開發效率。Visual Studio 2012、Windows 8和C# 5.0三劍客提供了完善的平臺和工具集來幫助你開發下一代的、功能強大的、直觀的而且容易移植的應用程序。
在認真傾聽了開發人員的反饋之后,Microsoft對UI進行了一些修訂并發布了Windows 8.1,同時發布的還有Visual Studio 2013,其中包含Visual Studio 2012的累積更新并增添了一些新功能來進一步提升編程效率。雖然對Visual Studio的許多更新都不大,而且C#語言本身沒有發生任何變化,但我們認為由于Windows 8.1在UI上發生了變化,所以有必要對本書進行一番修訂,這正是這一版的來由。
注意 本書原版基于Visual Studio 2013 Technical Preview和Windows 8.1。中文版則針對Visual Studio 2013正式版和Windows 8.1 Update 1進行了全面修訂。
本書面向的讀者
本書假定你要使用Visual Studio 2013和.NET Framework 4.5.1學習基礎的C#編程知識。學完本書后,會對C#有一個全面、透徹的理解,會用它開發反應靈敏的、可伸縮的、能在Windows操作系統上運行的應用程序。
C# 5.0應用程序在Windows 7、Windows 8和Windows 8.1上都能生成和運行。但Windows 7和Windows 8在UI上有很大區別。另外,Windows 8.1對UI模型進行了一些修改,造成使用新功能的應用程序在Windows 8上可能無法運行。因此,本書的設計是第I到第III部分的練習和示例在三種環境中都能運行,但第IV部分專注于Windows 8.1開發,強調了如何針對新平臺開發交互式程序。
本書不面向的讀者
本書面向剛開始用C#進行開發的人士,重點放在C#語言上面。本書不涉及企業級Windows應用程序的開發技術,比如ADO.NET、ASP.NET、Windows Communication Foundation或者Workflow Foundation。要了解這些方面的知識,可參考《從入門到精通》系列的其他書籍,包括《Microsoft ASP.NET 4從入門到精通》、《Microsoft ADO.NET 4從入門到精通》以及《Microsoft Windows Communication Foundation 4從入門到精通》。
本書的組織
本書分為以下四大部分。
第I部分“Visual C#和Visual Studio 2013概述”介紹了C#語言的核心語法,還演示了Visual Studio編程環境。
第II部分“理解C#對象模型”深入探討如何用C#創建和管理新類型,以及如何管理這些類型引用的資源。
第III部分“用C#定義可擴展類型”全面討論了如何利用C#語言元素來構建能在多個應用程序中重用的類型。
第IV部分“使用C#構建專業Windows 8.1應用程序”描述了Windows 8.1編程模型,以及如何用C#為新模型構建交互式應用程序。
注意雖然第IV部分面向Windows 8.1,但第23章和第24章的一些概念還是適用于Windows 7和Windows 8應用程序。
導讀
本書幫助你掌握多個基本領域的開發技能。無論剛開始學習編程,還是從另一種語言(C、C++、Java或Visual Basic)轉向C#,本書都能提供幫助。參考下表找到最佳起點。
讀者類型
面向對象編程的新手
步驟
1. 按照“范例代碼”一節的步驟安裝練習文件
2. 順序閱讀第Ⅰ部分、第Ⅱ部分和第Ⅲ部分
3. 有了一定經驗后,如果有興趣,繼續完成第Ⅳ部分的學習
續表
讀者類型
熟悉C語言等過程編程語言,但新涉足C#
步驟
1. 按照“范例代碼”一節的步驟安裝練習文件
2. 略讀前6章來獲得對C#和Visual Studio 2013的大致印象,重點閱讀第7∼22章
3. 閱讀第Ⅳ部分了解如何構建可伸縮的Windows 8.1應用程序
從面向對象語言C++或Java等遷移到C# 1. 按照“范例代碼”一節的步驟安裝練習文件
2. 略讀前7章,獲得對C#語言和Visual Studio 2013的大致印象,
重點閱讀第8∼22章
3. 閱讀第Ⅳ部分了解如何構建可伸縮的Windows 8.1應用程序
從Visual Basic遷移到C# 1. 按照“范例代碼”一節的步驟安裝練習文件
2. 順序閱讀第Ⅰ部分、第Ⅱ部分和第Ⅲ部分
3. Windows 8.1應用程序開發請閱讀第Ⅳ部分
4. 閱讀每章末尾的“快速參考”小節,了解C#特有的構造做完所有練習后再將本書作為參考書使用的讀者 1. 根據目錄尋找特定主題的信息2. 閱讀每章最后的“快速參考”,查看語法和技術歸納本書大多數章節都通過實際的例子方便讀者鞏固剛學到的知識。無論感興趣的是哪個主題,都注意先下載并安裝好范例代碼。
本書的約定和特色本書通過一些約定來增強內容的可讀性,以便于讀者理解。
每個練習都用編號的操作步驟來完成。
“注意”等特色段落提供了成功完成一個步驟需要了解的額外信息或替代方案。
要求讀者輸入的文本加粗顯示。
兩個鍵名之間的加號(+)意味著必須同時按下這兩個鍵。例如,“按Alt+Tab鍵”意味著按住Alt鍵不放,然后按Tab鍵。
描述菜單操作時,采取“文件”|“打開”的形式,意思是從“文件”菜單中選擇“打開”命令。
系統需求
為了完成本書的練習,需準備以下硬件和軟件:
Windows 7(x86或x64),Windows 8(x86或x64),Windows 8.1(x86或x64),Windows Server 2008 R2(x64),Windows Server 2012(x64)或者Windows Server 2012 R2(x64)
注意 Visual Studio 2013的Windows Store模板不可用于Windows 8,Windows 7,Windows Server 2012或Windows Server 2008 R2。要使用這些模板,或者要執行生成Windows Store應用的那些練習,操作系統必須是Windows 8.1或Windows Server 2012 R2。
Visual Studio 2013(除Visual Studio Express for Windows 8.1之外的任意版本)
注意 可以使用Visual Studio Express 2013 for Windows Desktop,但就只能執行本書的Windows 7版本的練習。不可用它執行第IV部分的練習。
1.6 GHz或更快的處理器(推薦2 GHz以上)32位操作系統至少1 GB RAM,64位至少2 GB RAM。在虛擬機中運行再加512 MB10 GB剩余硬盤空間支持DirectX 9的顯示卡,1024 × 768或更高分辨率。Windows 8.1推薦1366 × 768或更高分辨率DVD-ROM驅動器(如果從DVD安裝Visual Studio)下載軟件和范例代碼需要Internet連接此外,還需要以管理員身份安裝和配置Visual tudio 2013。
范例代碼
本書的配套網絡資源包含練習時會用到的范例代碼。使用這些范例代碼,讀者不再需要浪費時間創建和練習無關的文件。借助于這些練習文件和課程中描述的步驟,讀者可以在實踐中學習,這是迅速掌握并記住新的編程技能的一種簡單而高效的方式。
按以下步驟在計算機上安裝本書配套代碼。
1.在Internet Explorer或其他瀏覽器的地址欄中輸入transbot.ys168.com。
2.點擊和本書對應的目錄,并下載源代碼文件壓縮包。
3.將壓縮包解壓到計算機的“文檔”文件夾 。如下圖所示。
使用練習文件
本書每一章都解釋了在什么時候以及如何使用必要的練習文件。需要使用練習文件的時候,書中會給出相應的指示,幫助你打開正確的文件。
如果想知道所有細節,可以參見下表,其中列出了本書要用到的所有Visual Studio 2013項目和解決方案,它們以文件夾的形式進行分組以便查找。練習通常會為同一個項目提供初始文件和完成之后的版本。有的練習提供Windows 7和Windows 8.1兩個版本,操作步驟會針對不同操作系統給出相應的指示。已完成的項目存儲在帶有- Complete后綴的文件夾中。
注意 如果使用Windows 7、Windows 8、Windows Server 2012或Windows Server 2008 R2,按照Windows 7的步驟操作。如果使用Windows 8.1或Windows Server 2012 R2,按照Windows 8.1的步驟操作。
項目名稱說明
第1章
TextHello 作為第一個項目,它指導你創建一個簡單程序來顯示歡迎文本
WPFHello 使用WPF技術在窗口中顯示歡迎文本
第2章
PrimitiveDataTypes 演示如何使用基元類型來聲明變量,如何向變量賦值,如何在窗口中顯示值
MathsOperators 演示了算術操作符(+、–、*、/、%)
第3章
Methods 改進上個項目的代碼,體會如何使用方法來建立代碼的結構
DailyRate 指導你寫自己的方法,執行方法,使用Visual Studio 2013調試器來單步執行方法
使用可選參數的DailyRate 演示如何讓方法獲取可選參數,如何使用具名參數來調用方法
第4章
Selection 演示如何用嵌套if語句實現復雜邏輯,例如比較兩個日期的相等性
SwitchStatement 這個簡單的程序使用一個switch語句將字符轉換成相應的XML形式
第5章
WhileStatement 用while語句逐行讀取源文件,在Windows窗體的文本框中顯示每一行
DoStatement 使用do語句將十進制數轉換成八進制 續表
項目名稱 說明
第6章
MathsOperators 對第2章的MathsOperators項目進行改進,試驗會造成程序執行失敗的各種未處理的異常。然后,用try和catch關鍵字使應用程序更健壯,防止因為錯誤輸入或操作而失敗
第7章
Classes 演示如何定義自己的類,為它添加公共構造器、方法和私有字段;還演示如何用new關鍵字創建類的實例,如何定義靜態方法和字段
第8章
Parameters 演示值類型和引用類型的參數的區別,還演示如何使用ref和out關鍵字
第9章
StructsAndEnums 定義結構來表示日期
第10章
Cards 使用數組來建模紙牌游戲中的一手牌
第11章
ParamsArrays 演示如何使用params關鍵字使方法能接受任意數量的參數
第12章
Vehicles 用繼承創建簡單的交通工具類,還演示如何定義虛方法
ExtensionMethod 演示如何為int類型創建擴展方法,允許將整數從十進制轉換成其他進制
第13章
Drawing Using Interfaces 實現圖形繪圖包的一部分。用接口定義要由幾何圖形對象公開并實現的方法
Drawing Using Abstract Classes 擴展了Drawing Using Interfaces項目,將幾何圖形對象的常用功能集成到抽象類中
第14章
GarbageCollectionDemo 演示如何使用Dispose模式實現異常安全的資源清理
第15章
Drawing Using Properties 擴展第13章的Drawing Using Abstract Classes項目,用屬性將數據封裝到類中
AutomaticProperties 演示如何為類創建自動屬性,如何用它們初始化類的實例
第16章
Indexers 該項目使用了兩個索引器,一個根據姓名查找電話號碼,另一個根據電話號碼查找姓名
第17章
BinaryTree 演示如何使用泛型生成類型安全的結構,可包含任何類型的元素
BuildTree 演示如何使用泛型實現類型安全的方法,可獲取任何類型的參數
第18章
Cards 升級第10章的代碼,演示如何用集合建模一手牌
續表
項目名稱 說明
第19章
BinaryTree 演示如何實現泛型IEnumerator接口,為泛型Tree類創建枚舉器
IteratorBinaryTree 用迭代器為泛型Tree類生成枚舉器
第20章
Delegates 演示如何通過委托調用方法,將方法的邏輯和調用方法的應用程序分開
Delegates With Event 演示如何用事件提醒對象發生了某事,如何捕捉事件并執行需要的處理
第21章
QueryBinaryTree 演示如何通過LINQ查詢從二叉樹對象獲取數據
第22章
ComplexNumbers 定義新類型來建模復數,并為這種類型實現常用的操作符
第23章
GraphDemo 生成并在WPF窗體上顯示復雜圖表。使用單線程執行計算
GraphDemo With Tasks 創建多個任務,并行執行圖表計算
Parallel GraphDemo 使用Parallel類對創建和管理任務的過程進行抽象
GraphDemo With Cancellation 中途得體地取消任務
ParallelLoop 演示何時不該使用Parallel類創建和運行任務
第24章
GraphDemo 修改第23章的同名項目,使用async關鍵字和await操作符異步計算圖表數據
PLINQ 使用并行任務,用PLINQ查詢數據
CalculatePI 使用統計學采樣計算PI的近似值。使用了并行任務
第25章
Customers Without Scalable UI 使用默認Grid控件進行Adventure Works公司的Customers 應用程序的UI布局。控件使用絕對定位,屏幕分辨率和設備大小改變時,不會自動伸縮
Customers With Scalable UI 使用嵌套Grid控件并定義行和列來實現控件的相對定位。這個版本的UI能自動適應不同的屏幕分辨率和設備大小。但在貼靠視圖中表現不佳
Customers With Adaptive UI 對上一個可伸縮UI進行擴展。使用Visual State Manager檢測切換到貼靠視圖的事件,并相應修改控件布局
Customers With Styles
使用XAML樣式更改字體和背景圖片
第26章
DataBinding 使用數據綁定在UI中顯示從數據源獲取的客戶資料;還演示了如何實現INotifyPropertyChanged接口,從而允許UI更新客戶資料,并將改動發送回數據源
ViewModel 通過實現Model-View-ViewModel模式,將UI同數據源訪問邏輯分開
Search 實現Windows 8.1搜索合約,按名字或姓氏搜索客戶
續表
項目名稱 說明
第27章
Data Service 這個解決方案包含一個Web應用程序來提供REST Web服務,使Customers應用程序能從SQL Server數據庫獲取客戶數據。REST Web服務通過由實體框架創建的實體模型來訪問數據庫
Updatable ViewModel 這個解決方案中的Customers項目包含一個擴展的ViewModel,它提供許多命令,允許UI通過REST Web服務插入和更新客戶資料
內容簡介:

C#作為微軟的旗艦編程語言,深受程序員喜愛,是編寫高效應用程序的首選語言。Visual C# 2013提供了大量新功能,本書圍繞語言的基礎知識和這些新功能全面介紹了如何利用Visual Studio 2013和.NET Framework 4.5編寫C#應用程序。本書沿襲深受讀者歡迎的Step by Step風格,通過合理的練習引導讀者逐步構建在Windows 7和Windows 8.1上運行的應用程序、訪問SQL Server數據庫以及開發多線程應用等。
全書共27章,結構清晰,敘述清楚。所有練習均在Visual Studio 2013簡體中文版上進行過全面演練。無論是剛開始接觸面向對象編程的新手,還是打算遷移到C#的C、C++或Java程序員,都可以從本書汲取到新的知識。迅速掌握C#編程技術。
目錄:

第I部分 Visual C#和Visual Studio 2013概述
第1章 歡迎進入C#編程世界 3
1.1 開始在Visual Studio 2013環境中編程 3
1.2 編寫第一個程序 7
1.3 使用命名空間 12
1.4 創建圖形應用程序 14
1.4.1 探索Windows Store應用程序 24
1.4.2 探索WPF應用程序 27
1.4.3 向圖形應用程序添加代碼 29
小結 31
第1章快速參考 31
第2章 使用變量、操作符和表達式 33
2.1 理解語句 33
2.2 使用標識符 34
2.3 使用變量 35
2.3.1 命名變量 35
2.3.2 聲明變量 35
2.4 使用基元數據類型 36
2.4.1 未賦值的局部變量 37
2.4.2 顯示基元數據類型的值 37
2.5 使用算術操作符 43
2.5.1 操作符和類型 43
2.5.2 深入了解算術操作符 45
2.5.3 控制優先級 50
2.5.4 使用結合性對表達式進行求值 50
2.5.5 結合性和賦值操作符 51
2.6 變量遞增和遞減 52
2.7 聲明隱式類型的局部變量 53
小結 54
第2章快速參考 54
第3章 方法和作用域 56
3.1 創建方法 56
3.1.1 聲明方法 56
3.1.2 從方法返回數據 57
3.1.3 調用方法 59
3.2 使用作用域 61
3.2.1 定義局部作用域 62
3.2.2 定義類作用域 62
3.2.3 重載方法 63
3.3 編寫方法 63
3.4 使用可選參數和具名參數 70
3.4.1 定義可選參數 72
3.4.2 傳遞具名參數 72
3.4.3 消除可選參數和具名參數的歧義 73
小結 77
第3章快速參考 78
第4章 使用判斷語句 79
4.1 聲明布爾變量 79
4.2 使用布爾操作符 79
4.2.1 理解相等和關系操作符 80
4.2.2 理解條件邏輯操作符 80
4.2.3 短路求值 81
4.2.4 操作符的優先級和結合性總結 81
4.3 使用if語句做出判斷 82
4.3.1 理解if語句的語法 82
4.3.2 使用代碼塊分組語句 83
4.3.3 嵌套if語句 84
4.4 使用switch語句 90
4.4.1 理解switch語句的語法 91
4.4.2 遵守switch語句的規則 92
小結 95
第4章快速參考 95
第5章 使用復合賦值和循環語句 97
5.1 使用復合賦值操作符 97
5.2 使用while語句 98
5.3 編寫for語句 103
5.4 編寫do語句 105
小結 113
第5章快速參考 113
第6章 管理錯誤和異常 114
6.1 處理錯誤 114
6.2 嘗試執行代碼和捕捉異常 114
6.2.1 未處理的異常 116
6.2.2 使用多個catch處理程序 116
6.2.3 捕捉多個異常 117
6.2.4 傳播異常 122
6.3 使用checked和unchecked整數運算 124
6.3.1 編寫checked語句 125
6.3.2 編寫checked表達式 125
6.4 拋出異常 128
6.5 使用finally塊 132
小結 133
第6章快速參考 134
第II部分 理解C#對象模型
第7章 創建并管理類和對象 137
7.1 理解分類 137
7.2 封裝的目的 137
7.3 定義并使用類 138
7.4 控制可訪問性 139
7.4.1 使用構造器 140
7.4.2 重載構造器 141
7.5 理解靜態方法和數據 148
7.5.1 創建共享字段 149
7.5.2 使用const關鍵字創建靜態字段 150
7.5.3 靜態類 150
7.5.4 匿名類 152
小結 153
第7章快速參考 154
第8章 理解值和引用 156
8.1 復制值類型的變量和類 156
8.2 理解null值和可空類型 161
8.2.1 使用可空類型 162
8.2.2 理解可空類型的屬性 163
8.3 使用ref和out參數 164
8.3.1 創建ref參數 164
8.3.2 創建out參數 165
8.4 計算機內存的組織方式 167
8.5 System.Object類 169
8.6 裝箱 170
8.7 拆箱 170
8.8 數據類型的安全轉換 171
8.8.1 is操作符 172
8.8.2 as操作符 172
小結 174
第8章快速參考 174
第9章 使用枚舉和結構創建值類型 177
9.1 使用枚舉 177
9.1.1 聲明枚舉 177
9.1.2 使用枚舉 177
9.1.3 選擇枚舉字面值 178
9.1.4 選擇枚舉的基本類型 179
9.2 使用結構 181
9.2.1 聲明結構 183
9.2.2 理解結構和類的區別 184
9.2.3 聲明結構變量 185
9.2.4 理解結構的初始化 185
9.2.5 復制結構變量 189
小結 193
第9章快速參考 193
第10章 使用數組 195
10.1 聲明和創建數組 195
10.1.1 聲明數組變量 195
10.1.2 創建數組實例 196
10.1.3 填充和使用數組 197
10.1.4 創建隱式類型的數組 197
10.1.5 訪問單獨的數組元素 198
10.1.6 遍歷數組 199
10.1.7 數組作為方法參數和返回值傳遞 200
10.1.8 復制數組 201
10.1.9 使用多維數組 203
10.1.10 創建交錯數組 203
小結 213
第10章快速參考 213
第11章 理解參數數組 215
11.1 回顧重載 215
11.2 使用數組參數 216
11.2.1 聲明參數數組 217
11.2.2 使用params object[] 219
11.2.3 使用參數數組 220
11.3 比較參數數組和可選參數 223
小結 225
第11章快速參考 225
第12章 使用繼承 226
12.1 什么是繼承 226
12.2 使用繼承 227
12.2.1 復習System.Object類 228
12.2.2 調用基類構造器 229
12.2.3 類的賦值 230
12.2.4 聲明新方法 231
12.2.5 聲明虛方法 232
12.2.6 聲明重寫方法 233
12.2.7 理解受保護的訪問 236
12.3 理解擴展方法 242
小結 245
第12章快速參考 246
第13章 創建接口和定義抽象類 248
13.1 理解接口 248
13.1.1 定義接口 249
13.1.2 實現接口 249
13.1.3 通過接口來引用類 251
13.1.4 使用多個接口 251
13.1.5 顯式實現接口 252
13.1.6 接口的限制 254
13.1.7 定義和使用接口 254
13.2 抽象類 263
13.3 密封類 265
13.3.1 密封方法 266
13.3.2 實現并使用抽象類 266
小結 272
第13章快速參考 272
第14章 使用垃圾回收和資源管理 274
14.1 對象的生存期 274
14.1.1 編寫析構器 275
14.1.2 為什么要使用垃圾回收器 276
14.1.3 垃圾回收器的工作原理 278
14.1.4 慎用析構器 278
14.2 資源管理 279
14.2.1 資源清理方法 279
14.2.2 異常安全的資源清理 279
14.2.3 using語句和IDisposable 接口 280
14.2.4 從析構器中調用Dispose 方法 282
14.3 實現異常安全的資源清理 283
小結 290
第14章快速參考 291
第III部分 用C#定義可擴展類型
第15章 實現屬性以訪問字段 295
15.1 使用方法實現封裝 295
15.2 什么是屬性 297
15.2.1 使用屬性 299
15.2.2 只讀屬性 299
15.2.3 只寫屬性 300
15.2.4 屬性的可訪問性 300
15.3 理解屬性的局限性 301
15.4 在接口中聲明屬性 302
15.5 生成自動屬性 308
15.6 使用屬性來初始化對象 309
小結 313
第15章快速參考 313
第16章 使用索引器 315
16.1 什么是索引器 315
16.1.1 不用索引器的例子 315
16.1.2 使用索引器的同一個例子 317
16.1.3 理解索引器的訪問器 319
16.1.4 對比索引器和數組 319
16.2 接口中的索引器 321
16.3 在Windows應用程序中使用索引器 322
小結 328
第16章快速參考 328
第17章 泛型概述 330
17.1 object的問題 330
17.2 泛型解決方案 333
17.2.1 對比泛型類與常規類 335
17.2.2 泛型和約束 336
17.3 創建泛型類 336
17.3.1 二叉樹理論 336
17.3.2 使用泛型構造二叉樹類 339
17.4 創建泛型方法 347
17.5 可變性和泛型接口 350
17.5.1 協變接口 351
17.5.2 逆變接口 353
小結 355
第17章快速參考 355
第18章 使用集合 357
18.1 什么是集合類 357
18.1.1 List集合類 358
18.1.2 LinkedList集合類 360
18.1.3 Queue集合類 362
18.1.4 Stack集合類 363
18.1.5 Dictionary集合類 364
18.1.6 SortedList集合類 365
18.1.7 HashSet集合類 366
18.2 使用集合初始化器 368
18.3 Find方法、謂詞和Lambda表達式 368
18.4 比較數組和集合 370
小結 374
第18章快速參考 375
第19章 枚舉集合 377
19.1 枚舉集合中的元素 377
19.1.1 手動實現枚舉器 378
19.1.2 實現IEnumerable接口 382
19.2 使用迭代器來實現枚舉器 384
19.2.1 一個簡單的迭代器 384
19.2.2 使用迭代器為Tree類定義枚舉器 386
小結 388
第19章快速參考 389
第20章 分離應用程序邏輯并處理事件 390
20.1 理解委托 390
20.1.1 .NET Framework類庫的委托例子 391
20.1.2 自動化工廠的例子 393
20.1.3 不使用委托來實現工廠 393
20.1.4 使用委托來實現工廠 394
20.1.5 聲明和使用委托 396
20.2 Lambda表達式和委托 404
20.2.1 創建方法適配器 405
20.2.2 Lambda表達式的形式 405
20.3 啟用事件通知 407
20.3.1 聲明事件 407
20.3.2 訂閱事件 408
20.3.3 取消訂閱事件 408
20.3.4 引發事件 409
20.4 理解用戶界面事件 409
小結 417
第20章快速參考 417
第21章 使用查詢表達式來查詢內存中的數據 420
21.1 什么是語言集成查詢 420
21.2 在C#應用程序中使用LINQ 421
21.2.1 選擇數據 422
21.2.2 篩選數據 425
21.2.3 排序、分組和聚合數據 425
21.2.4 聯接數據 427
21.2.5 使用查詢操作符 428
21.2.6 查詢Tree對象中的數據 431
21.2.7 LINQ和推遲求值 436
小結 440
第21章快速參考 440
第22章 操作符重載 442
22.1 理解操作符 442
22.1.1 操作符的限制 442
22.1.2 重載的操作符 443
22.1.3 創建對稱操作符 444
22.2 理解復合賦值 446
22.3 聲明遞增和遞減操作符 447
22.4 比較結構和類中的操作符 448
22.5 定義成對的操作符 449
22.6 實現操作符 450
22.7 理解轉換操作符 456
22.7.1 提供內建轉換 456
22.7.2 實現用戶自定義的轉換操作符 457
22.7.3 再論創建對稱操作符 458
22.7.4 添加隱式轉換操作符 458
小結 461
第22章快速參考 461
第IV部分 使用C#構建Windows 8.1專業應用
第23章 使用任務提高吞吐量 465
23.1 使用并行處理來執行多任務處理 465
23.2 用.NET Framework實現多任務處理 467
23.2.1 任務、線程和線程池 468
23.2.2 創建、運行和控制任務 469
23.2.3 使用Task類實現并行處理 471
23.2.4 使用Parallel類對任務進行抽象 480
23.2.5 什么時候不要使用Parallel類 484
23.3 取消任務和處理異常 486
23.3.1 協作式取消的原理 486
23.3.2 為Canceled和Faulted任務使用延續任務 498
小結 498
第23章快速參考 499
第24章 通過異步操作提高響應速度 501
24.1 實現異步方法 502
24.1.1 定義異步方法:問題 502
24.1.2 定義異步方法:解決方案 504
24.1.3 定義返回值的異步方法 509
24.1.4 異步方法和Windows RuntimeAPI 510
24.2 用PLINQ進行并行數據訪問 512
24.2.1 用PLINQ增強遍歷集合時的性能 513
24.2.2 取消PLINQ查詢 517
24.3 同步對數據的并發訪問 517
24.3.1 鎖定數據 520
24.3.2 用于協調任務的同步基元 521
24.3.3 取消同步 523
24.3.4 并發集合類 523
24.3.5 使用并發集合和鎖來實現線程安全的數據訪問 524
小結 533
第24章快速參考 533
第25章 實現Windows Store應用程序的用戶界面 536
25.1 什么是Windows Store應用 536
25.2 使用空白模板構建Windows Store應用 539
25.2.1 實現可伸縮的用戶界面 541
25.2.2 向用戶界面應用樣式 567
小結 575
第25章快速參考 576
第26章 在Windows Store應用程序中顯示和搜索數據 577
26.1 實現Model-View-ViewModel模式 577
26.1.1 通過數據綁定顯示數據 578
26.1.2 通過數據綁定修改數據 583
26.1.3 為ComboBox控件使用數據綁定 587
26.1.4 創建ViewModel 589
26.1.5 向ViewModel添加命令 592
26.2 Windows 8.1合約 602
26.2.1 實現搜索合約 603
26.2.2 導航至所選項 613
小結 615
第26章快速參考 617
第27章 在Windows Store應用程序中 訪問遠程數據庫 619
27.1 從數據庫獲取數據 619
27.1.1 創建實體模型 621
27.1.2 創建和使用REST Web 服務 625
27.2 通過REST Web服務插入、更新 和刪除 636
小結 651
第27章快速參考 652
譯者后記 655
序: