內容簡介
本書主要介紹如何用C#和WPF開發C/S應用程序和麵嚮服務的WCF應用程序。全書共12章,前6章介紹網絡編程預備知識,包括IP地址轉換、DNS、套接字、數字墨跡、進程、綫程、應用程序域、數據流、數據編碼和解碼、數據加密和解密、異步編程、並行編程等;後6章介紹WCF和HTTP、TCP、UDP、MSMQ編程技術。同時在附錄中給齣瞭本書的上機練習和綜閤設計要求。
本書提供配套的PPT課件以及在VS2012下調試通過的所有參考源程序和全部習題參考解答。
本書可作為高等院校計算機及相關專業的教材,也可作為初、中級程序員的參考用書。
內頁插圖
目錄
第1篇 預備知識
第1章 網絡應用編程入門知識 2
1.1 安裝VS2012開發環境 2
1.2 網絡應用編程模型 2
1.2.1 互聯網與企業內部網 2
1.2.2 分散式、集中式和分布式 3
1.2.3 C/S模式 4
1.2.4 B/S模式 6
1.2.5 網絡應用程序編程模型 6
1.3 TCP/IP網絡協議 7
1.3.1 TCP/IP基本概念 8
1.3.2 傳統的網絡編程技術簡介 8
1.4 IP地址轉換與域名解析 9
1.4.1 IP地址與端口 10
1.4.2 IP地址轉換相關類 11
1.4.3 域名解析 13
1.5 網卡信息檢測與網絡流量檢測 17
1.5.1 網卡信息檢測相關類 17
1.5.2 網絡流量檢測相關類 20
習題 21
第2章 數字墨跡與動態繪圖基礎 22
2.1 Ribbon控件及其基本用法 22
2.1.1 設計選項卡 22
2.1.2 在多個選項卡中重用選項 23
2.2 WPF中的數字墨跡 24
2.2.1 墨跡畫闆(InkCanvas) 24
2.2.2 觸筆和手勢 26
2.2.3 觸筆事件 27
2.2.4 墨跡筆畫(Stroke)和墨跡數據(StrokeCollection) 27
2.3 自定義墨跡畫闆 29
2.3.1 靜態呈現和動態呈現 29
2.3.2 製作自定義墨跡控件 29
2.4 利用自定義墨跡畫闆實現動態繪圖 30
2.4.1 繪製球形 30
2.4.2 繪製球形序列 31
2.4.3 繪製矩形和矩形序列 32
2.4.4 繪製圖像和圖像序列 33
2.4.5 繪製漸變直綫 34
2.4.6 繪製漸變麯綫和文字 34
2.4.7 選擇、編輯、縮放與橡皮擦 35
2.4.8 保存和打開墨跡文件 36
2.5 功能擴展建議 37
習題 37
第3章 進程、綫程與應用程序域 38
3.1 進程和綫程 38
3.1.1 基本概念 38
3.1.2 進程管理(Process類) 39
3.1.3 綫程管理(Thread類) 44
3.1.4 綫程池(ThreadPool類) 46
3.1.5 多綫程編程中的資源同步 47
3.1.6 WPF中的多綫程編程模型 48
3.2 應用程序域及其基本操作 51
3.2.1 基本概念 51
3.2.2 程序集與反射 52
3.2.3 創建和卸載應用程序域(AppDomain類) 54
習題 57
第4章 數據流與數據的加密和解密 58
4.1 數據編碼和解碼 58
4.1.1 常見的字符集編碼方式 58
4.1.2 利用Encoding類實現編碼和解碼 59
4.2 數據流 61
4.2.1 文件流(FileStream) 61
4.2.2 內存流(MemoryStream) 64
4.2.3 網絡流(NetworkStream) 64
4.2.4 加密流(CryptoStream) 66
4.2.5 StreamReader和StreamWriter類 67
4.2.6 BinaryReader和BinaryWriter類 67
4.3 數據加密與數字簽名 67
4.3.1 對稱加密 68
4.3.2 不對稱加密 73
4.3.3 密鑰容器 74
4.3.4 數字簽名 75
習題 76
第5章 異步編程 77
5.1 並行和異步編程預備知識 77
5.1.1 任務(Task類、Task
類) 77
5.1.2 Lambda錶達式 78
5.1.3 Action和Func委托 80
5.1.4 元組(Tuple類) 82
5.2 異步編程基本技術 83
5.2.1 異步編程的實現方式和異步操作關鍵字 83
5.2.2 創建任務 86
5.2.3 取消或終止任務的執行 93
5.2.4 獲取任務執行的狀態 96
5.2.5 報告任務執行的進度 98
5.2.6 定時執行某些任務 100
習題 102
第6章 並行編程 103
6.1 基本概念 103
6.1.1 並行編程的實現方式 103
6.1.2 任務並行庫(TPL)及其分類 104
6.1.3 並行編程中的分區(Partitioner) 105
6.2 Parallel類及其幫助器類 106
6.2.1 Parallel類 106
6.2.2 Parallel幫助器類 109
6.2.3 用於綫程全局變量的數據結構 110
6.3 數據並行 111
6.3.1 利用Parallel.For方法實現數據並行 111
6.3.2 利用Parallel.ForEach方法實現數據並行 117
6.4 任務並行 120
6.4.1 Parallel.Invoke方法 120
6.4.2 任務調度 123
6.4.3 任務等待與組閤 126
習題 128
第2篇 麵嚮服務的WCF編程
第7章 WCF入門 130
7.1 預備知識 130
7.1.1 XML 130
7.1.2 Web Service 131
7.1.3 遠程處理(RPC) 133
7.1.4 消息隊列(MSMQ) 134
7.1.5 麵嚮服務的體係結構(SOA) 134
7.2 WCF入門 135
7.2.1 WCF基礎知識 135
7.2.2 WCF體係結構 138
7.2.3 承載WCF的方式 139
7.3 WCF服務端和客戶端編程基礎 141
7.3.1 WCF服務端編程模型 141
7.3.2 WCF客戶端編程模型 143
7.3.3 編寫服務端和客戶端程序的基本思路 144
7.4 設計和實現協定 150
7.4.1 協定和特性 150
7.4.2 服務協定 151
7.4.3 數據協定 152
7.4.4 消息協定 156
7.5 服務綁定與終結點配置 159
7.5.1 在服務端配置文件中配置WCF服務 159
7.5.2 終結點綁定方式 161
7.5.3 需要綁定的元素及其含義 162
習題 164
第8章 WCF和HTTP應用編程 165
8.1 HTTP簡介 165
8.1.1 HTTP的特點 165
8.1.2 HTTP的請求與響應 166
8.1.3 HTTP應用編程的技術選擇 168
8.2 WCF中與HTTP相關的綁定 168
8.2.1 基本HTTP綁定(BasicHttpBinding類) 168
8.2.2 其他常用的HTTP綁定 170
8.3 WCF客戶端和服務端的消息交換模式 171
8.3.1 請求應答模式(Action/Reply) 172
8.3.2 單嚮模式(IsOneWay) 175
8.3.3 雙工通信 176
8.3.4 同步操作和異步操作 180
8.4 WCF和HTTP編程示例 180
8.4.1 五子棋遊戲規則描述 181
8.4.2 服務端和客戶端通信接口 181
8.4.3 服務端編程 184
8.4.4 客戶端編程 191
習題 202
第9章 WCF和TCP應用編程 203
9.1 TCP應用編程概述 203
9.1.1 TCP的特點 203
9.1.2 TCP應用編程的技術選擇 204
9.2 利用傳統技術實現TCP應用編程 205
9.2.1 TcpClient類和TcpListener類 205
9.2.2 基本用法示例 208
9.3 利用WCF實現TCP應用編程 217
9.3.1 WCF與TCP相關的綁定 218
9.3.2 利用WCF和TCP編寫網絡遊戲 218
習題 235
第10章 WCF和UDP應用編程 236
10.1 UDP應用編程概述 236
10.1.1 UDP基本知識 236
10.1.2 UDP應用編程的技術選擇 238
10.2 利用任務模型實現UDP應用編程 238
10.2.1 利用UdpClient類發送和接收數據 238
10.2.2 利用UdpClient實現群發功能 243
10.2.3 利用UdpClient實現網絡會議討論 246
10.3 利用WCF實現UDP應用編程 251
10.3.1 定義和實現協定 251
10.3.2 承載和配置WCF服務 252
10.3.3 添加服務引用 253
10.3.4 添加客戶端窗口和調用代碼 253
習題 257
第11章 WCF和MSMQ應用編程 258
11.1 MSMQ基礎知識 258
11.1.1 隊列和事務 258
11.1.2 WCF與MSMQ相關的綁定 260
11.2 WCF和MSMQ基本用法示例 263
11.2.1 可靠排隊通信和快速排隊通信 263
11.2.2 雙嚮通信 271
11.3 WCF和MSMQ的高級處理功能 275
11.3.1 使用死信隊列處理消息傳輸故障 275
11.3.2 使用病毒消息隊列處理反復齣現的故障 283
11.3.3 其他高級處理功能 285
習題 286
第12章 綜閤實例——商場銷售服務係統 287
12.1 係統要求與架構設計 287
12.1.1 係統要求 287
12.1.2 係統總體架構設計 288
12.1.3 服務端功能 289
12.1.4 客戶端功能 289
12.1.5 數據庫結構設計 290
12.2 功能實現及擴展建議 291
12.2.1 服務端功能實現示例 291
12.2.2 客戶端功能實現示例 293
12.2.3 組內分工閤作及係統擴展建議 302
附錄A 上機練習 303
A.1 視頻動態繪製練習 303
A.2 多任務網段掃描練習 304
A.3 矩陣並行計算練習 304
A.4 WCF和HTTP文件傳輸練習 305
A.5 WCF和TCP消息通信練習 305
附錄B 綜閤設計 307
B.1 綜閤設計分組 307
B.2 基本要求和功能擴展建議 307
B.2.1 係統選題要求 307
B.2.2 係統基本功能要求 308
B.2.3 功能擴展建議 308
B.3 源程序和文檔提交要求 308 前言/序言
C#網絡應用編程(第3版)(工業和信息化部“十二五”規劃教材) 下載 mobi epub pdf txt 電子書 格式