包郵 C#高級編程 第10版程序設計基礎教程和演化相關高級asp.net VisualC#

包郵 C#高級編程 第10版程序設計基礎教程和演化相關高級asp.net VisualC# pdf epub mobi txt 電子書 下載 2025

圖書標籤:
  • C#高級編程
  • C#
  • ASP
  • NET
  • VisualC#
  • 程序設計
  • 教程
  • 第10版
  • 編程基礎
  • 演化
  • 技術
  • 開發
想要找書就要到 靜流書站
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!
店鋪: 蘭興達圖書專營店
齣版社: 清華大學齣版社
ISBN:9787302461968
商品編碼:12050258057

具體描述

>

C#高級編程(第10版) C# 6 & .NET Core 1.0

作者:[美] Christian Nagel 著 李銘 譯
定價:198元
印次:1-1
ISBN:9787302461968
齣版日期:2017.03.01

圖書簡介

提升C#和.NET技能的必備參考資源

Visual Studio 2015、ASP.NET Core 1.0和Universal Windows Platform的推齣,為開發人員提供瞭使用C#創建應用程序的新方式。作為經典C#暢銷書 ,本書涵蓋瞭充分利用升級功能,積極簡化工作流程所需的全部信息。本書循序漸進地講解瞭Visual Studio 2015、.NET Core 1.0、ASP.NET MVC、Universal Windows Platform、WPF的新變化。每一章都提供瞭清晰的解釋、下載的代碼,並從專傢的角度提供瞭有價值的視野。有本書在手,讀者可以快速獲得新的特性和功能。

主要內容

◆ 通過.NET Core 和C# 6的增強功能,重新塑造瞭.NET平颱,包括新增的.NET編譯器平颱

◆ 展示瞭如何使用新的Visual Studio工具和用於ASP.NET Core 1.0、ASP.NET MVC、Web API、WPF和Universal Windows Platform的模闆

◆ 介紹允許應用程序在Windows、Linux和OS X上運行的.NET Core框架,還囊括瞭任務和並行編程,訪問文件係統,以及網絡堆棧

◆ 演示瞭如何使用ASP.NET MVC 6和Web API創建Web應用程序,以及利用SignalR和WebHooks的推送通知

◆ 介紹專業開發功能,例如單元測試,通過MVVM模式在WPF和Universal Windows Platform之間共享代碼

 

 

目錄

第Ⅰ部分 C# 語 言

第1章 .NET應用程序體係結構 2

1.1 選擇技術 2

1.2 迴顧.NET曆史 3

1.2.1 C# 1.0 —— 一種新語言 3

1.2.2 帶有泛型的C# 2和.NET 2 5

1.2.3 .NET 3.0—— Windows

Presentation Foundation 5

1.2.4 C# 3和.NET 3.5—— LINQ 5

1.2.5 C# 4和.NET 4.0—— dynamic

和TPL 6

1.2.6 C# 5和異步編程 6

1.2.7 C# 6和.NET Core 7

1.2.8 選擇技術,繼續前進 8

1.3 .NET 2015 8

1.3.1 .NET Framework 4.6 9

1.3.2 .NET Core 1.0 10

1.3.3 程序集 11

1.3.4 NuGet 包 12

1.3.5 公共語言運行庫 13

1.3.6 .NET Native 14

1.3.7 Windows 運行庫 14

1.4 Hello, World 15

1.5 用.NET 4.6編譯 16

1.6 用.NET Core CLI編譯 17

1.6.1 設置環境 18

1.6.2 構建應用程序 18

1.6.3 打包和發布應用程序 21

1.7 應用程序類型和技術 22

1.7.1 數據訪問 22

1.7.2 Windows桌麵應用程序 23

1.7.3 UWP 24

1.7.4 SOAP服務和WCF 24

1.7.5 Web服務和ASP.NET Web

API 24

1.7.6 WebHooks和SignalR 25

1.7.7 Windows服務 25

1.7.8 Web應用程序 25

1.7.9 Microsoft Azure 26

1.8 開發工具 27

1.8.1 Visual Studio Community 27

1.8.2 Visual Studio Professional with

MSDN 27

1.8.3 Visual Studio Enterprise with

MSDN 27

1.8.4 Visual Studio Code 28

1.9 小結 28

第2章 核心C# 29

2.1 C#基礎 30

2.2 用Visual Studio創建Hello,

World! 30

2.2.1 創建解決方案 30

2.2.2 創建新項目 31

2.2.3 編譯和運行程序 33

2.2.4 代碼的詳細介紹 35

2.3 變量 36

2.3.1 初始化變量 37

2.3.2 類型推斷 38

2.3.3 變量的作用域 39

2.3.4 常量 41

2.4 預定義數據類型 41

2.4.1 值類型和引用類型 42

2.4.2 .NET類型 43

2.4.3 預定義的值類型 43

2.4.4 預定義的引用類型 46

2.5 程序流控製 48

2.5.1 條件語句 48

2.5.2 循環 51

2.5.3 跳轉語句 55

2.6 枚舉 55

2.7 名稱空間 57

2.7.1 using語句 58

2.7.2 名稱空間的彆名 59

2.8 Main()方法 60

2.9 使用注釋 61

2.9.1 源文件中的內部注釋 61

2.9.2 XML文檔 62

2.10 C#預處理器指令 63

2.10.1 #define和#undef 63

2.10.2 #if、#elif、#else和#endif 64

2.10.3 #warning和 # error 65

2.10.4 #region和#endregion 65

2.10.5 #line 65

2.10.6 #pragma 65

2.11 C#編程準則 66

2.11.1 關於標識符的規則 66

2.11.2 用法約定 67

2.12 小結 70

第3章 對象和類型 71

3.1 創建及使用類 72

3.2 類和結構 72

3.3 類 73

3.3.1 字段 73

3.3.2 屬性 74

3.3.3 方法 76

3.3.4 構造函數 81

3.3.5 隻讀成員 85

3.3.6 隻讀字段 85

3.4 匿名類型 88

3.5 結構 89

3.5.1 結構是值類型 90

3.5.2 結構和繼承 91

3.5.3 結構的構造函數 91

3.6 按值和按引用傳遞參數 91

3.6.1 ref參數 92

3.6.2 out參數 93

3.7 可空類型 94

3.8 枚舉 95

3.9 部分類 97

3.10 擴展方法 99

3.11 Object類 100

3.12 小結 101

第4章 繼承 102

4.1 繼承 102

4.2 繼承的類型 102

4.2.1 多重繼承 103

4.2.2 結構和類 103

4.3 實現繼承 103

4.3.1 虛方法 104

4.3.2 多態性 106

4.3.3 隱藏方法 107

4.3.4 調用方法的基類版本 108

4.3.5 抽象類和抽象方法 109

4.3.6 密封類和密封方法 110

4.3.7 派生類的構造函數 110

4.4 修飾符 112

4.4.1 訪問修飾符 113

4.4.2 其他修飾符 113

4.5 接口 114

4.5.1 定義和實現接口 115

4.5.2 派生的接口 118

4.6 is和as運算符 120

4.7 小結 121

第5章 托管和非托管的資源 122

5.1 資源 122

5.2 後颱內存管理 123

5.2.1 值數據類型 123

5.2.2 引用數據類型 125

5.2.3 垃圾迴收 127

5.3 強引用和弱引用 129

5.4 處理非托管的資源 130

5.4.1 析構函數或終結器 130

5.4.2 IDisposable接口 131

5.4.3 using語句 132

5.4.4 實現IDisposable接口和

析構函數 133

5.4.5 IDisposable和終結器的

規則 134

5.5 不安全的代碼 135

5.5.1 用指針直接訪問內存 135

5.5.2 指針示例:

PointerPlayground 143

5.5.3 使用指針優化性能 147

5.6 平颱調用 150

5.7 小結 154

第6章 泛型 155

6.1 泛型概述 155

6.1.1 性能 156

6.1.2 類型安全 157

6.1.3 二進製代碼的重用 157

6.1.4 代碼的擴展 158

6.1.5 命名約定 158

6.2 創建泛型類 158

6.3 泛型類的功能 162

6.3.1 默認值 163

6.3.2 約束 163

6.3.3 繼承 166

6.3.4 靜態成員 167

6.4 泛型接口 167

6.4.1 協變和抗變 168

6.4.2 泛型接口的協變 169

6.4.3 泛型接口的抗變 170

6.5 泛型結構 171

6.6 泛型方法 173

6.6.1 泛型方法示例 174

6.6.2 帶約束的泛型方法 175

6.6.3 帶委托的泛型方法 176

6.6.4 泛型方法規範 176

6.7 小結 178

第7章 數組和元組 179

7.1 同一類型和不同類型的多個

對象 179

7.2 簡單數組 180

7.2.1 數組的聲明 180

7.2.2 數組的初始化 180

7.2.3 訪問數組元素 181

7.2.4 使用引用類型 182

7.3 多維數組 183

7.4 鋸齒數組 184

7.5 Array類 185

7.5.1 創建數組 185

7.5.2 復製數組 186

7.5.3 排序 187

7.6 數組作為參數 190

7.6.1 數組協變 190

7.6.2 ArraySegment 191

7.7 枚舉 191

7.7.1 IEnumerator接口 192

7.7.2 foreach語句 192

7.7.3 yield語句 193

7.8 元組 197

7.9 結構比較 198

7.10 小結 201

第8章 運算符和類型強製轉換 202

8.1 運算符和類型轉換 202

8.2 運算符 203

8.2.1 運算符的簡化操作 204

8.2.2 運算符的優先級和關聯性 212

8.3 類型的安全性 213

8.3.1 類型轉換 213

8.3.2 裝箱和拆箱 217

8.4 比較對象的相等性 218

 

8.4.1 比較引用類型的相等性 218

8.4.2 比較值類型的相等性 219

8.5 運算符重載 219

8.5.1 運算符的工作方式 220

8.5.2 運算符重載的示例:Vector

結構 221

8.5.3 比較運算符的重載 225

8.5.4 可以重載的運算符 227

8.6 實現自定義的索引運算符 228

8.7 實現用戶定義的類型強製

轉換 230

8.7.1 實現用戶定義的類型強製

轉換 231

8.7.2 多重類型強製轉換 237

8.8 小結 240

第9章 委托、lambda錶達式和

事件 241

9.1 引用方法 241

9.2 委托 242

9.2.1 聲明委托 242

9.2.2 使用委托 243

9.2.3 簡單的委托示例 246

9.2.4 Action和Func

委托 248

9.2.5 BubbleSorter示例 248

9.2.6 多播委托 251

9.2.7 匿名方法 254

9.3 lambda錶達式 255

9.3.1 參數 256

9.3.2 多行代碼 256

9.3.3 閉包 257

9.4 事件 258

9.4.1 事件發布程序 258

9.4.2 事件偵聽器 260

9.4.3 弱事件 261

9.5 小結 263

第10章 字符串和正則錶達式 264

10.1 System.String類 265

10.1.1 構建字符串 266

10.1.2 StringBuilder成員 269

10.2 字符串格式 270

10.2.1 字符串插值 270

10.2.2 日期時間和數字的格式 272

10.2.3 自定義字符串格式 274

10.3 正則錶達式 275

10.3.1 正則錶達式概述 275

10.3.2 RegularExpressionsPlayaround

示例 276

10.3.3 顯示結果 279

10.3.4 匹配、組和捕獲 280

10.4 小結 283

第11章 集閤 284

11.1 概述 284

11.2 集閤接口和類型 285

11.3 列錶 285

11.3.1 創建列錶 287

11.3.2 隻讀集閤 294

11.4 隊列 294

11.5 棧 298

11.6 鏈錶 300

11.7 有序列錶 305

11.8 字典 306

11.8.1 字典初始化器 307

11.8.2 鍵的類型 307

11.8.3 字典示例 308

11.8.4 Lookup類 312

11.8.5 有序字典 313

11.9 集 313

11.10 性能 315

11.11 小結 316

第12章 特殊的集閤 317

12.1 概述 317

12.2 處理位 317

12.2.1 BitArray類 318

12.2.2 BitVector32結構 320

12.3 可觀察的集閤 323

12.4 不變的集閤 324

12.4.1 使用構建器和不變的

集閤 327

12.4.2 不變集閤類型和接口 327

12.4.3 使用LINQ和不變的

數組 328

12.5 並發集閤 328

12.5.1 創建管道 329

12.5.2 使用BlockingCollection 332

12.5.3 使用Concurrent-

Dictionary 333

12.5.4 完成管道 334

12.6 小結 335

第13章 LINQ 337

13.1 LINQ概述 337

13.1.1 列錶和實體 338

13.1.2 LINQ查詢 341

13.1.3 擴展方法 342

13.1.4 推遲查詢的執行 343

13.2 標準的查詢操作符 345

13.2.1 篩選 347

13.2.2 用索引篩選 347

13.2.3 類型篩選 348

13.2.4 復閤的from子句 348

13.2.5 排序 349

13.2.6 分組 350

13.2.7 LINQ 查詢中的變量 351

13.2.8 對嵌套的對象分組 352

13.2.9 內連接 353

13.2.10 左外連接 355

13.2.11 組連接 355

13.2.12 集閤操作 358

13.2.13 閤並 360

13.2.14 分區 360

13.2.15 聚閤操作符 362

13.2.16 轉換操作符 363

13.2.17 生成操作符 365

13.3 並行LINQ 365

13.3.1 並行查詢 365

13.3.2 分區器 366

13.3.3 取消 367

13.4 錶達式樹 367

13.5 LINQ提供程序 370

13.6 小結 371

第14章 錯誤和異常 372

14.1 簡介 372

14.2 異常類 373

14.3 捕獲異常 374

14.3.1 實現多個catch塊 377

14.3.2 在其他代碼中捕獲異常 380

14.3.3 System.Exception屬性 380

14.3.4 異常過濾器 381

14.3.5 重新拋齣異常 382

14.3.6 沒有處理異常時發生的

情況 386

14.4 用戶定義的異常類 386

14.4.1 捕獲用戶定義的異常 387

14.4.2 拋齣用戶定義的異常 389

14.4.3 定義用戶定義的異常類 392

14.5 調用者信息 394

14.6 小結 396

第15章 異步編程 397

15.1 異步編程的重要性 397

15.2 異步模式 398

15.2.1 同步調用 405

15.2.2 異步模式 406

15.2.3 基於事件的異步模式 407

15.2.4 基於任務的異步模式 408

15.3 異步編程的基礎 410

15.3.1 創建任務 410

15.3.2 調用異步方法 411

15.3.3 延續任務 411

15.3.4 同步上下文 412

15.3.5 使用多個異步方法 412

15.3.6 轉換異步模式 413

 

15.4 錯誤處理 414

15.4.1 異步方法的異常處理 415

15.4.2 多個異步方法的異常

處理 415

15.4.3 使用AggregateException

信息 416

15.5 取消 417

15.5.1 開始取消任務 417

15.5.2 使用框架特性取消任務 417

15.5.3 取消自定義任務 418

15.6 小結 419

第16章 反射、元數據和動態編程 420

16.1 在運行期間檢查代碼和

動態編程 420

16.2 自定義特性 421

16.2.1 編寫自定義特性 422

16.2.2 自定義特性示例:

WhatsNewAttributes 425

16.3 反射 428

16.3.1 System.Type類 428

16.3.2 TypeView示例 430

16.3.3 Assembly類 433

16.3.4 完成WhatsNewAttributes

示例 434

16.4 為反射使用動態語言擴展 438

16.4.1 創建Calculator庫 438

16.4.2 動態實例化類型 440

16.4.3 用反射API調用成員 442

16.4.4 使用動態類型調用成員 442

16.5 dynamic類型 443

16.6 DLR 448

16.7 包含DLR ScriptRuntime 449

16.8 DynamicObject和

ExpandoObject 451

16.8.1 DynamicObject 451

16.8.2 ExpandoObject 453

16.9 小結 455

 

第Ⅱ部分 .NET Core與Windows

Runtime

第17章 Visual Studio 2015 458

17.1 使用Visual Studio 2015 458

17.1.1 Visual Studio的版本 461

17.1.2 Visual Studio設置 461

17.2 創建項目 462

17.2.1 麵嚮多個版本的.NET

Framework 463

17.2.2 選擇項目類型 464

17.3 瀏覽並編寫項目 469

17.3.1 構建環境:CLI和

MSBuild 469

17.3.2 Solution Explorer 470

17.3.3 使用代碼編輯器 477

17.3.4 學習和理解其他窗口 481

17.3.5 排列窗口 485

17.4 構建項目 485

17.4.1 構建、編譯和生成代碼 486

17.4.2 調試版本和發布版本 486

17.4.3 選擇配置 488

17.4.4 編輯配置 488

17.5 調試代碼 490

17.5.1 設置斷點 490

17.5.2 使用數據提示和調試器可

視化工具 491

17.5.3 Live Visual Tree 492

17.5.4 監視和修改變量 493

17.5.5 異常 494

17.5.6 多綫程 495

17.6 重構工具 495

17.7 體係結構工具 497

17.7.1 代碼地圖 498

17.7.2 層關係圖 499

17.8 分析應用程序 500

17.8.1 診斷工具 500

17.8.2 Concurrency Visualizer 504

17.8.3 代碼分析器 505

17.8.4 Code Metrics 506

17.9 小結 506

第18章 .NET編譯器平颱 507

18.1 簡介 507

18.2 編譯器管道 509

18.3 語法分析 509

18.3.1 使用查詢節點 515

18.3.2 遍曆節點 517

18.4 語義分析 519

18.4.1 編譯 520

18.4.2 語義模型 521

18.5 代碼轉換 522

18.5.1 創建新樹 522

18.5.2 使用語法重寫器 524

18.6 Visual Studio Code重構 529

18.6.1 VSIX包 529

18.6.2 代碼重構提供程序 532

18.7 小結 537

第19章 測試 538

19.1 概述 538

19.2 使用MSTest進行單元測試 539

19.2.1 使用MSTest創建單元

測試 539

19.2.2 運行單元測試 541

19.2.3 使用MSTest預期異常 543

19.2.4 測試全部代碼路徑 544

19.2.5 外部依賴 544

19.2.6 Fakes Framework 547

19.2.7 IntelliTest 549

19.3 使用xUnit進行單元測試 549

19.3.1 使用xUnit和.NET Core 550

19.3.2 創建Fact屬性 550

19.3.3 創建Theory屬性 551

19.3.4 用dotnet工具運行單元

測試 552

19.3.5 使用Mocking庫 552

19.4 UI 測試 556

19.5 Web測試 559

19.5.1 創建Web測試 560

19.5.2 運行Web測試 562

19.5.3 Web 負載測試 563

19.6 小結 565

第20章 診斷和Application Insights 566

20.1 診斷概述 566

20.2 使用EventSource跟蹤 567

20.2.1 EventSource的簡單用法 568

20.2.2 跟蹤工具 570

20.2.3 派生自EventSource 572

20.2.4 使用注釋和EventSource 574

20.2.5 創建事件清單模式 576

20.2.6 使用活動ID 578

20.3 創建自定義偵聽器 581

20.4 使用Application Insights 582

20.4.1 創建通用Windows應用

程序 583

20.4.2 創建Application Insights

資源 583

20.4.3 配置Windows應用程序 584

20.4.4 使用收集器 586

20.4.5 編寫自定義事件 587

20.5 小結 588

第21章 任務和並行編程 590

21.1 概述 590

21.2 Parallel類 591

21.2.1 使用Parallel.For()方法

循環 591

21.2.2 提前停止Parallel.For 594

21.2.3 Parallel.For()的初始化 595

21.2.4 使用Parallel.ForEach()

方法循環 596

21.2.5 通過Parallel.Invoke()方法

調用多個方法 597

21.3 任務 597

21.3.1 啓動任務 597

21.3.2 Future——任務的結果 600

21.3.3 連續的任務 601

21.3.4 任務層次結構 602

21.3.5 從方法中返迴任務 603

21.3.6 等待任務 603

21.4 取消架構 604

21.4.1 Parallel.For()方法的取消 604

21.4.2 任務的取消 605

21.5 數據流 607

21.5.1 使用動作塊 607

21.5.2 源和目標數據塊 608

21.5.3 連接塊 609

21.6 小結 611

第22章 任務同步 612

22.1 概述 613

22.2 綫程問題 613

22.2.1 爭用條件 614

22.2.2 死鎖 616

22.3 lock語句和綫程安全 618

22.4 Interlocked類 623

22.5 Monitor類 624

22.6 SpinLock結構 625

22.7 WaitHandle基類 626

22.8 Mutex類 627

22.9 Semaphore類 628

22.10 Events類 630

22.11 Barrier類 633

22.12 ReaderWriterLockSlim類 636

22.13 Timer類 639

22.14 小結 641

第23章 文件和流 643

23.1 概述 644

23.2 管理文件係統 644

23.2.1 檢查驅動器信息 645

23.2.2 使用Path類 646

23.2.3 創建文件和文件夾 647

23.2.4 訪問和修改文件的屬性 648

23.2.5 創建簡單的編輯器 649

23.2.6 使用File執行讀寫操作 651

23.3 枚舉文件 653

23.4 使用流處理文件 654

23.4.1 使用文件流 655

23.4.2 讀取流 659

23.4.3 寫入流 659

23.4.4 復製流 660

23.4.5 隨機訪問流 661

23.4.6 使用緩存的流 663

23.5 使用讀取器和寫入器 663

23.5.1 StreamReader類 663

23.5.2 StreamWriter類 664

23.5.3 讀寫二進製文件 665

23.6 壓縮文件 666

23.6.1 使用壓縮流 667

23.6.2 壓縮文件 668

23.7 觀察文件的更改 668

23.8 使用內存映射的文件 670

23.8.1 使用訪問器創建內存映射

文件 671

23.8.2 使用流創建內存映射

文件 673

23.9 使用管道通信 675

23.9.1 創建命名管道服務器 675

23.9.2 創建命名管道客戶端 677

23.9.3 創建匿名管道 677

23.10 通過Windows運行庫

使用文件和流 679

23.10.1 Windows應用程序

編輯器 679

23.10.2 把Windows Runtime類

型映射為.NET類型 682

23.11 小結 684

第24章 安全性 685

24.1 概述 685

24.2 驗證用戶信息 686

24.2.1 使用Windows標識 686

24.2.2 Windows Principal 687

24.2.3 使用聲稱 688

24.3 加密數據 690

24.3.1 創建和驗證簽名 692

24.3.2 實現安全的數據交換 694

24.3.3 使用RSA簽名和散列 697

24.3.4 實現數據的保護 700

24.4 資源的訪問控製 703

24.5 使用證書發布代碼 706

24.6 小結 707

第25章 網絡 708

25.1 網絡 708

25.2 HttpClient類 709

25.2.1 發齣異步的Get請求 709

25.2.2 拋齣異常 710

25.2.3 傳遞標題 711

25.2.4 訪問內容 713

25.2.5 用HttpMessageHandler

自定義請求 713

25.2.6 使用SendAsync創建

HttpRequestMessage 714

25.2.7 使用HttpClient和Windows

Runtime 715

25.3 使用WebListener類 717

25.4 使用實用工具類 720

25.4.1 URI 721

25.4.2 IPAddress 722

25.4.3 IPHostEntry 723

25.4.4 Dns 724

25.5 使用TCP 725

25.5.1 使用TCP創建HTTP客戶

程序 726

25.5.2 創建TCP偵聽器 728

25.5.3 創建TCP客戶端 736

25.5.4 TCP和UDP 740

25.6 使用UDP 740

25.6.1 建立UDP接收器 741

25.6.2 創建UDP發送器 742

25.6.3 使用多播 745

25.7 使用套接字 745

25.7.1 使用套接字創建偵聽器 746

25.7.2 使用NetworkStream和

套接字 749

25.7.3 通過套接字使用讀取器和

寫入器 749

25.7.4 使用套接字實現接收器 751

25.8 小結 753

第26章 Composition 754

26.1 概述 754

26.2 Composition庫的體係結構 756

26.2.1 使用特性的Composition 757

26.2.2 基於約定的部件注冊 763

26.3 定義協定 766

26.4 導齣部件 770

26.4.1 創建部件 770

26.4.2 使用部件的部件 776

26.4.3 導齣元數據 776

26.4.4 使用元數據進行惰性

加載 778

26.5 導入部件 779

26.5.1 導入連接 782

26.5.2 部件的惰性加載 784

26.5.3 讀取元數據 784

26.6 小結 786

第27章 XML和JSON 787

27.1 數據格式 787

27.1.1 XML 788

27.1.2 .NET支持的XML標準 789

27.1.3 在框架中使用XML 790

27.1.4 JSON 790

27.2 讀寫流格式的XML 792

27.2.1 使用XmlReader類

讀取XML 793

27.2.2 使用XmlWriter類 797

27.3 在.NET中使用DOM 798

27.3.1 使用XmlDocument類

讀取 799

27.3.2 遍曆層次結構 799

27.3.3 使用XmlDocument插入

節點 800

27.4 使用XPathNavigator類 802

27.4.1 XPathDocument類 802

27.4.2 XPathNavigator類 803

27.4.3 XPathNodeIterator類 803

27.4.4 使用XPath導航XML 803

27.4.5 使用XPath評估 804

27.4.6 用XPath修改XML 805

27.5 在XML中序列化對象 806

27.5.1 序列化簡單對象 807

27.5.2 序列化一個對象樹 809

27.5.3 沒有特性的序列化 811

27.6 LINQ to XML 814

27.6.1 XDocument對象 815

27.6.2 XElement對象 816

27.6.3 XNamespace對象 817

27.6.4 XComment對象 818

27.6.5 XAttribute對象 819

27.6.6 使用LINQ查詢XML

文檔 820

27.6.7 查詢動態的XML文檔 821

27.6.8 轉換為對象 822

27.6.9 轉換為XML 823

27.7 JSON 824

27.7.1 創建JSON 825

27.7.2 轉換對象 825

27.7.3 序列化對象 827

27.8 小結 828

第28章 本地化 829

28.1 全球市場 830

28.2 System.Globalization名稱

空間 830

28.2.1 Unicode問題 830

28.2.2 區域性和區域 831

28.2.3 使用區域性 835

28.2.4 排序 841

28.3 資源 843

28.3.1 資源讀取器和寫入器 843

28.3.2 使用資源文件生成器 844

28.3.3 通過ResourceManager

使用資源文件 845

28.3.4 System.Resources名稱


.NET Core 3.1 實戰:構建企業級Web應用與服務 本書專為希望精通現代.NET開發,尤其是在ASP.NET Core 3.1平颱上構建健壯、高性能企業級Web應用和服務的開發者量身打造。 我們將深入剖析ASP.NET Core 3.1的核心概念、架構設計以及最佳實踐,帶您從基礎邁嚮高級,掌握構建下一代Web解決方案的關鍵技術。 學習目標: 掌握ASP.NET Core 3.1的架構和核心組件: 理解中間件管道、依賴注入、配置管理、路由機製等,為構建可伸縮、可維護的應用打下堅實基礎。 精通ASP.NET Core Web API開發: 學習如何設計RESTful風格的API,實現數據的高效傳輸與交互,包括請求/響應處理、模型綁定、數據驗證、錯誤處理、版本控製等。 深入理解Entity Framework Core: 掌握ORM(對象關係映射)的強大功能,實現與各種數據庫(SQL Server, PostgreSQL, MySQL等)的無縫集成,進行高效的數據訪問、查詢、遷移和並發控製。 構建安全可靠的Web應用: 學習身份認證(Authentication)和授權(Authorization)機製,包括Cookie認證、JWT(JSON Web Tokens)認證、OpenID Connect、OAuth 2.0等,確保您的應用安全無虞。 提升應用性能與可伸縮性: 探索緩存策略(內存緩存、分布式緩存)、異步編程、日誌記錄、健康檢查等技術,優化應用性能,應對高並發場景。 掌握現代Web開發模式: 學習如何使用SignalR實現實時通信,構建動態交互的Web應用,以及如何利用Docker容器化部署您的ASP.NET Core應用,實現環境一緻性和便捷部署。 理解並實踐領域驅動設計(DDD)概念: 將DDD的核心理念融入API設計與開發流程,構建更具業務價值和可擴展性的係統。 熟悉CI/CD流程: 學習如何集成持續集成/持續部署(CI/CD)工具,自動化構建、測試和部署流程,提升開發效率。 內容概覽: 第一部分:ASP.NET Core 3.1 基礎與架構 第1章:ASP.NET Core 3.1 概覽與入門 ASP.NET Core 的演進與優勢 項目結構與工作原理 創建第一個 ASP.NET Core Web API 應用 理解 `Program.cs` 和 `Startup.cs` 的作用 第2章:中間件管道的奧秘 中間件(Middleware)的概念與工作流程 常用內置中間件詳解(Static Files, Routing, Authentication, Authorization, CORS 等) 編寫自定義中間件,實現特定功能 中間件順序的重要性與實踐 第3章:依賴注入(DI)的藝術 DI 的基本概念與優勢 ASP.NET Core 內置的 DI 容器 服務生命周期管理(Singleton, Scoped, Transient) 在控製器、服務類中注冊與解析服務 高級 DI 場景:構造函數注入、屬性注入、方法注入 第4章:配置管理與環境變量 `appsettings.json` 及多環境配置 使用環境變量、命令行參數覆蓋配置 `IOptions` 模式:類型化配置選項 實現動態配置更新 第5章:路由與端點(Endpoints) MVC 路由與 Web API 路由的區彆 基於約定的路由(Conventional Routing) 基於屬性的路由(Attribute Routing) 端點(Endpoints)的概念與配置 路由約束與參數綁定 第二部分:ASP.NET Core Web API 高級開發 第6章:RESTful API 設計原則 理解 REST 的約束(Uniform Interface, Stateless, Cacheable, Client-Server 等) 設計清晰的資源 URI 使用正確的 HTTP 方法(GET, POST, PUT, DELETE, PATCH) HTTP 狀態碼的正確使用 第7章:請求與響應處理 模型綁定(Model Binding):自動將請求數據映射到模型 數據驗證(Data Validation):使用 DataAnnotations 和 FluentValidation 內容協商(Content Negotiation):支持 JSON、XML 等格式 自定義請求/響應格式化器 第8章:錯誤處理與日誌記錄 統一的錯誤處理機製:`UseExceptionHandler` 中間件 自定義異常過濾器 日誌記錄的重要性與最佳實踐 使用 Serilog、NLog 等第三方日誌框架 集成 Application Insights 進行監控 第9章:API 版本控製策略 URI 版本控製 請求頭版本控製 查詢字符串版本控製 選擇閤適的版本控製策略 第10章:API 安全性:身份認證(Authentication) 身份認證的基本概念 Cookie 認證與跨站請求僞造(CSRF)防護 JWT(JSON Web Tokens)認證:無狀態認證 集成 ASP.NET Core Identity 實現基於角色的認證 第三部分:數據訪問與持久化 第11章:Entity Framework Core 基礎 ORM 的概念與 EF Core 的優勢 Code-First、Database-First、Model-First 開發模式 配置 DbContext 定義實體模型與關係(一對一、一對多、多對多) 使用 DbSet 進行數據操作 第12章:EF Core 高級查詢與操作 LINQ to Entities:編寫高效的查詢語句 導航屬性的使用 延遲加載(Lazy Loading)與預加載(Eager Loading) Projection(投影)以優化查詢性能 批量操作與事務管理 第13章:EF Core 數據遷移(Migrations) 理解 EF Core Migrations 的工作原理 創建、應用、迴滾遷移 處理復雜的遷移場景 數據庫部署策略 第14章:其他數據訪問技術(可選) Dapper:高性能的微型 ORM ADO.NET:底層數據庫訪問 第四部分:現代Web技術與部署 第15章:構建實時Web應用:SignalR SignalR 的核心概念:Hubs, Clients, Messages 實現服務器與客戶端之間的實時通信 使用 SignalR 實現聊天室、實時通知等功能 SignalR 的可伸縮性與優化 第16章:API 安全性:授權(Authorization) 授權的基本概念 基於角色的授權(Role-Based Authorization) 基於策略的授權(Policy-Based Authorization) 自定義授權策略 在控製器和方法級彆實現授權 第17章:緩存策略與性能優化 內存緩存(Memory Cache) 分布式緩存(Redis, Memcached) HTTP 響應緩存 使用 `IHttpClientFactory` 進行高效的 HTTP 請求 異步編程(Async/Await)的深度應用 第18章:Docker 容器化部署 Docker 基礎概念:鏡像、容器、Dockerfile 創建 ASP.NET Core 應用的 Dockerfile 構建 Docker 鏡像 運行 Docker 容器 使用 Docker Compose 管理多容器應用 第19章:持續集成與持續部署(CI/CD) CI/CD 的流程與價值 使用 Azure DevOps, GitHub Actions 等工具 自動化構建、測試、部署流程 部署到雲平颱(Azure App Service, AWS Elastic Beanstalk 等) 本書特色: 實戰導嚮: 每一章都包含精心設計的代碼示例和實踐練習,幫助您立即將所學知識應用於實際開發。 深入淺齣: 從基礎概念到高級主題,逐步引導讀者掌握ASP.NET Core 3.1的全貌。 最新技術: 聚焦ASP.NET Core 3.1,涵蓋現代Web開發所需的關鍵技術棧。 最佳實踐: 強調業界認可的設計模式和開發技巧,幫助您構建高質量、可維護的應用程序。 問題解決: 針對開發過程中常見的挑戰,提供切實可行的解決方案。 目標讀者: 有一定 C 和 .NET 基礎,希望轉嚮 ASP.NET Core 開發的程序員。 正在使用舊版 ASP.NET Framework,計劃遷移到 ASP.NET Core 的團隊。 需要構建高性能、可伸縮的企業級 Web API 和 Web 應用的開發者。 對現代 Web 開發技術(如實時通信、容器化)感興趣的開發者。 準備好迎接下一代Web開發瞭嗎?本書將是您通往ASP.NET Core 3.1精通之路的必備指南!

用戶評價

評分

坦白講,市麵上的技術書籍往往有一個通病:內容更新速度跟不上技術迭代,或者為瞭湊字數而堆砌過時的技術棧。但這本書顯然經過瞭精心的打磨和審慎的篩選。它在介紹C核心能力的同時,也敏銳地捕捉到瞭現代編程範式中的關鍵要素,比如函數式編程在C中的應用,以及如何用LINQ的強大能力來重構那些原本晦澀難懂的循環體。我特彆喜歡它在設計模式介紹上的角度——它不是簡單地羅列GoF的23種模式,而是結閤C的特性,探討瞭在.NET生態中,哪些模式被語言內置(如工廠模式的體現),哪些模式依然需要我們手動構造,並且提供瞭大量優雅的實現範例。這本書的排版風格非常友好,代碼塊的顔色區分和注釋清晰明瞭,長時間閱讀也不會感到視覺疲勞,這對於一本動輒上韆頁的厚重書籍來說,是一個巨大的加分項,充分體現瞭作者對讀者的尊重。

評分

初拿到這本書時,我其實抱著一絲懷疑的態度,畢竟“高級編程”的頭銜太大,很多時候意味著內容空泛或者過度依賴最新的框架特性而忽略瞭語言本身的核心。然而,閱讀的前幾章便徹底打消瞭我的疑慮。作者對於C語言特性的挖掘深度令人稱贊,特彆是對語言演進過程的梳理,讓我對.NET平颱的發展脈絡有瞭全新的認識。書中對異步編程模型(Async/Await)的講解,絕非停留在簡單的 `async void` 和 `async Task` 的區彆上,而是深入到瞭底層的狀態機轉換和上下文捕獲機製,這一點對於開發高並發、響應式的服務端應用至關重要。我將書中的一個疑難點,關於異常處理在跨綫程傳遞時的細節,拿到實際項目中驗證,發現書本預測的行為與實際結果完全吻閤,這證明瞭作者的經驗之老道和內容的嚴謹性。這本書更像是資深架構師的手把手教學,沒有冗餘的寒暄,每一頁都充滿瞭乾貨和實戰智慧,是提升實戰技能的必備參考書。

評分

這本書給我的最大感受是“深度”與“廣度”的完美平衡。我過去學習過程中遇到的最大障礙是,掌握瞭語言基礎後,麵對大型項目中的復雜模塊時,總感覺抓不住重點,不知道從哪個角度去優化和重構。這本書通過引入“演化”的概念,將C的各個版本迭代中所引入的新功能,與其解決的曆史遺留問題緊密關聯起來。這使得學習過程不再是機械地記憶語法,而是理解瞭技術演進的內在邏輯。例如,理解瞭Value Task的齣現背景,就明白瞭它在哪些場景下能真正帶來性能提升,而不是盲目地在所有異步調用中都使用它。這種對“為什麼”的深入探討,遠比單純的“怎麼做”更有價值。這本書無疑為我打開瞭一扇通往精通C世界的大門,它教會我的不僅僅是編程技巧,更是構建穩健、高效軟件的工程哲學,絕對是值得反復研讀的案頭必備工具書。

評分

這本書的包裝和印刷質量簡直無可挑剔,拿到手裏沉甸甸的感覺,就知道裏麵承載的內容絕非泛泛之輩。我特彆欣賞它在代碼示例上的細緻入微,每一個復雜的概念,作者都用最直觀、最易於理解的方式進行瞭拆解和呈現。尤其是對於麵嚮對象設計原則的講解,那真是鞭闢入裏,讓我這個在C世界裏摸爬滾打多年的老鳥,都有種醍醐灌頂的豁然開朗。它沒有急於展示那些炫酷的新技術,而是紮紮實實地把基礎——那些決定瞭代碼健壯性和可維護性的基石——打得異常牢固。比如,關於委托和事件的深入剖析,不同於市麵上其他書籍隻是簡單地告訴你“怎麼用”,而是詳盡地解釋瞭“為什麼這麼設計”,這對於我後續轉嚮更深層次的框架源碼閱讀幫助巨大。我用瞭好幾個周末時間,對照書中的練習題進行實踐,發現即便是過去一直感到模糊的內存管理和垃圾迴收機製,在作者的筆下也變得清晰可見,簡直是自學C進階的寶典,強烈推薦給所有希望從“會寫代碼”邁嚮“寫齣優秀代碼”的開發者。

評分

對於我這種主要工作在Web後端環境的開發者來說,選擇一本閤適的C書籍至關重要,因為它需要平衡核心語言能力和特定應用場景的結閤。這本書在這方麵做得非常齣色,它沒有將ASP.NET MVC或Core的內容與C基礎割裂開來,而是自然地將語言特性融入到Web請求生命周期的講解中。例如,書中講解反射和元數據處理時,緊接著就應用到瞭自定義路由或中間件的編寫上,這種由內而外的串聯,極大地提升瞭我的係統設計能力。我過去在處理性能瓶頸時常感到力不從心,但書中關於性能調優那一章節,詳細闡述瞭如何利用語言特性來避免不必要的對象分配和上下文切換,我的應用吞吐量因此獲得瞭顯著提升。這本書的價值在於它提供的不是孤立的知識點,而是一套完整的、可以用於構建復雜企業級係統的思維框架,非常適閤那些希望從純粹的實現者成長為係統設計者的中高級工程師。

評分

看起來挺厚實的,應該沒什麼毛病

評分

以前以為天下之書大多都能用來泡麵,直到我網購瞭這本……

評分

此用戶未填寫評價內容

評分

書的質量感覺一般 不值這個價錢

評分

很棒的一本書,應該是正品,很清晰,絕對值得每個.net開發者備一本

評分

不錯不錯不錯

評分

看起來還不錯,不知道翻久瞭會不會斷掉。太厚瞭。

評分

書是好書,接近1500頁,涵蓋瞭c#所涉及的所有內容,作為開發手冊,非常實用。c#語言學習的最佳工具書。不到一百塊,值得擁有。

評分

感覺蠻好的,關鍵是不貴

相關圖書

本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.coffeedeals.club All Rights Reserved. 靜流書站 版權所有