TOP
0
0
即日起~6/30,暑期閱讀書展,好書7折起
你必須知道的.NET(第2版)(簡體書)
滿額折

你必須知道的.NET(第2版)(簡體書)

商品資訊

人民幣定價:79 元
定價
:NT$ 474 元
優惠價
87412
絕版無法訂購
相關商品
商品簡介
作者簡介
名人/編輯推薦
目次

商品簡介

由王濤編著的《你必須知道的.NET》來自于微軟MVP的最新技術心得和
感悟,將技術問題以生動易懂的語言展開,層層深入,以例說理。全書主要
包括了.NET基礎知識及其深度分析,以.NET Framework和CLR研究為核心展
開.NET本質論述,涵蓋了.NET基本知識幾乎所有的重點內容。全書分為5個
部分,第1部分講述.NET與面向對象,從底層實現角度分析了.NET如何實現
面向對象機制,進一步分析了面向對象設計原則;第2部分論述了.NET類型
系統和CLR的內存管理機制,并對IL語言進行了相應介紹;第3部分論述.NET
Framework框架的方方面面,詳細分析了.NET框架的所有重點、難點和疑點
內容,對框架類庫的全貌進行了必要的專題性探討;第4部分重點介紹
了.NET泛型和安全性的相關知識和本質解密;第5部分對.NET 3.0/3.5/4.0
新特性進行了詳細的介紹和引導,對于快速入門.NET新特性提供了方便之門

《你必須知道的.NET》適于對.NET有一定了解的技術學習者、軟件工程
師和系統架構師閱讀,同時也有助于.NET初學者進行快速提高,可作為大中
專院校和.NET技術培訓機構的參考教材。

作者簡介

王濤,網名anytao,軟件架構師,機械工程碩士,連續三屆Microsoft VjsuaI C# MVP,博客園技術專家,著有《你必須知道的.NET》一書,專注于.NET底層架構和.NET平臺企業級應用,長期投入于互聯網產品開發、微軟云計算平臺、分布式系統和企業級系統架構的研究與實踐。目前,投身于移動互聯產業,和幾個志同道合的兄弟在技術之路上狂奔。

作者對.NET基礎架構和CLR底層運行機制有濃厚的研究興趣和造詣,熟悉ASP.NET、Windows Azure、SQL Server、WCF、LINQ、Silverlight、IIS、XML、Windows Phone、Facebook相關技術,精通數據庫應用系統和大型Web系統的開發流程、技術體系和架構設計,對面向對象、設計模式和軟件架構有長期的研究與實踐經驗。

名人/編輯推薦

由王濤編著的《你必須知道的.NET》以“你必須知道”而自詡,唯有意圖達到以實例為基點,以歸納為方法的技術論述特點:對于技術的論述和分析,力求做到深入淺出、娓娓道來;對于晦澀艱深的問題以故事性的分析來引導;對于典型的問題以對比的角度來揭密;對于知識性的內容以歸納總結形成綱要。作者對每個技術要點的論述,均結合淺顯易懂的實例來展開,將復雜的技術問題化解在循序漸進的思考中。讓你的“悟”道,快樂而輕松。
全書主要包括了.NET基礎知識及其深度分析,以.NET Framework和CLR研究為核心展開.NET本質論述,涵蓋了.NET基本知識幾乎所有的重點內容。

目次

第1部分 淵源——.NET與面向對象
第1章 OO大智慧 2
1.1 對象的旅行 3
1.1.1 引言 3
1.1.2 出生 3
1.1.3 旅程 3
1.1.4 插曲 4
1.1.5 消亡 6
1.1.6 結論 7
1.2 什么是繼承 7
1.2.1 引言 7
1.2.2 基礎為上 7
1.2.3 繼承本質論 9
1.2.4 秘境追蹤 13
1.2.5 規則制勝 16
1.2.6 結論 17
1.3 封裝的秘密 17
1.3.1 引言 17
1.3.2 讓ATM告訴你,什么是封裝 17
1.3.3 秘密何處:字段、屬性和方法 19
1.3.4 封裝的意義 23
1.3.5 封裝規則 23
1.3.6 結論 24
1.4 多態的藝術 24
1.4.1 引言 24
1.4.2 問題的拋出 24
1.4.3 最初的實現 25
1.4.4 多態,救命的稻草 27
1.4.5 隨需而變的業務 30
1.4.6 多態的類型、本質和規則 31
1.4.7 結論 33
1.5 玩轉接口 34
1.5.1 引言 34
1.5.2 什么是接口 34
1.5.3 .NET中的接口 35
1.5.4 面向接口的編程 38
1.5.5 接口之規則 40
1.5.6 結論 40
參考文獻 40
第2章 OO大原則 41
2.1 OO原則綜述 42
2.1.1 引言 42
2.1.2 講述之前 42
2.1.3 原則綜述 43
2.1.4 學習建議 44
2.1.5 結論 44
2.2 單一職責原則 44
2.2.1 引言 44
2.2.2 引經據典 45
2.2.3 應用反思 45
2.2.4 規則建議 47
2.2.5 結論 48
2.3 開放封閉原則 48
2.3.1 引言 48
2.3.2 引經據典 48
2.3.3 應用反思 49
2.3.4 規則建議 52
2.3.5 結論 53
2.4 依賴倒置原則 53
2.4.1 引言 53
2.4.2 引經據典 53
2.4.3 應用反思 54
2.4.4 規則建議 56
2.4.5 結論 56
2.5 接口隔離原則 56
2.5.1 引言 56
2.5.2 引經據典 56
2.5.3 應用反思 57
2.5.4 規則建議 59
2.5.5 結論 59
2.6 Liskov替換原則 59
2.6.1 引言 59
2.6.2 引經據典 59
2.6.3 應用反思 60
2.6.4 規則建議 61
2.6.5 結論 62
參考文獻 62
第3章 OO之美 63
3.1 設計的分寸 64
3.1.1 引言 64
3.1.2 設計由何而來 64
3.1.3 從此重構 65
3.1.4 結論 67
3.2 依賴的哲學 67
3.2.1 引言 67
3.2.2 什么是依賴,什么是抽象 68
3.2.3 重新回到依賴倒置 73
3.2.4 解構控制反轉(IoC)和依賴注入
3.2.4 (DI) 79
3.2.5 典型的設計模式 82
3.2.6 基于契約編程:SOA架構下的
3.2.6 依賴 83
3.2.7 對象創建的依賴 84
3.2.8 不規則總結 87
3.2.9 結論 87
3.3 模式的起點 87
3.3.1 引言 87
3.3.2 模式的起點 88
3.3.3 模式的建議 90
3.3.4 結論 91
3.4 面向對象和基于對象 91
3.4.1 引言 91
3.4.2 基于對象 91
3.4.3 二者的差別 91
3.4.4 結論 92
3.5 也談.NET閉包 92
3.5.1 引言 92
3.5.2 什么是閉包 92
3.5.3 .NET也有閉包 93
3.5.4 福利與問題 95
3.5.5 結論 96
3.6 好代碼和壞代碼 96
3.6.1 引言 96
3.6.2 好代碼、壞代碼 97
3.6.3 結論 105
參考文獻 105
第2部分 本質——.NET深入淺出
第4章 一切從IL開始 108
4.1 從Hello,world開始認識IL 109
4.1.1 引言 109
4.1.2 從Hello,world開始 109
4.1.3 IL體驗中心 109
4.1.4 結論 113
4.2 教你認識IL代碼——從基礎到工具 113
4.2.1 引言 113
4.2.2 使用工具 113
4.2.3 為何而探索 115
4.2.4 結論 116
4.3 教你認識IL代碼——IL語言基礎 116
4.3.1 引言 116
4.3.2 變量的聲明 116
4.3.3 基本類型 117
4.3.4 基本運算 118
4.3.5 數據加載與保存 118
4.3.6 流程控制 119
4.3.7 結論 120
4.4 管窺元數據和IL 120
4.4.1 引言 120
4.4.2 初次接觸 120
4.4.3 繼續深入 123
4.4.4 元數據是什么 125
4.4.5 IL是什么 128
4.4.6 元數據和IL在JIT編譯時 130
4.4.7 結論 134
4.5 經典指令解析之實例創建 134
4.5.1 引言 134
4.5.2 newobj和initobj 134
4.5.3 ldstr 136
4.5.4 newarr 137
4.5.5 結論 139
4.6 經典指令解析之方法調度 140
4.6.1 引言 140
4.6.2 方法調度簡論:call、callvirt和
4.6.2 calli 140
4.6.3 直接調度 142
4.6.4 間接調度 146
4.6.5 動態調度 147
4.6.6 結論 147
參考文獻 147
第5章 品味類型 148
5.1 品味類型——從通用類型系統開始 149
5.1.1 引言 149
5.1.2 基本概念 149
5.1.3 位置與關系 150
5.1.4 通用規則 151
5.1.5 結論 152
5.2 品味類型——值類型與引用類型 152
5.2.1 引言 152
5.2.2 內存有理 152
5.2.3 通用規則與比較 156
5.2.4 對癥下藥——應用場合與注意
5.2.4 事項 158
5.2.5 再論類型判等 159
5.2.6 再論類型轉換 159
5.2.7 以代碼剖析 160
5.2.8 結論 167
5.3 參數之惑——傳遞的藝術 167
5.3.1 引言 168
5.3.2 參數基礎論 168
5.3.3 傳遞的基礎 169
5.3.4 深入討論,傳遞的藝術 170
5.3.5 結論 174
5.4 皆有可能——裝箱與拆箱 175
5.4.1 引言 175
5.4.2 品讀概念 176
5.4.3 原理分拆 176
5.4.4 還是性能 179
5.4.5 重在應用 180
5.4.6 結論 182
參考文獻 182
第6章 內存天下 184
6.1 內存管理概要 185
6.1.1 引言 185
6.1.2 內存管理概觀要論 185
6.1.3 結論 186
6.2 對象創建始末 186
6.2.1 引言 187
6.2.2 內存分配 187
6.2.3 結論 193
6.3 垃圾回收 193
6.3.1 引言 193
6.3.2 垃圾回收 193
6.3.3 非托管資源清理 197
6.3.4 結論 204
6.4 性能優化的多方探討 204
6.4.1 引言 204
6.4.2 性能條款 204
6.4.3 結論 210
參考文獻 211
第3部分 格局——.NET面面俱到
第7章 深入淺出——關鍵字的秘密 214
7.1 把new說透 215
7.1.1 引言 215
7.1.2 基本概念 215
7.1.3 深入淺出 217
7.1.4 結論 219
7.2 base和this 219
7.2.1 引言 219
7.2.2 基本概念 219
7.2.3 深入淺出 220
7.2.4 通用規則 224
7.2.5 結論 224
7.3 using的多重身份 224
7.3.1 引言 224
7.3.2 引入命名空間 225
7.3.3 創建別名 225
7.3.4 強制資源清理 227
7.3.5 結論 230
7.4 認識全面的null 230
7.4.1 引言 230
7.4.2 從什么是null開始 230
7.4.3 Nullable<T>(可空類型) 232
7.4.4 ??運算符 234
7.4.5 Nulll Object模式 235
7.4.6 結論 238
7.5 轉換關鍵字 238
7.5.1 引言 239
7.5.2 自定義類型轉換探討 239
7.5.3 本質分析 240
7.5.4 結論 242
7.6 預處理指令關鍵字 242
7.6.1 引言 242
7.6.2 預處理指令簡述 242
7.6.3 #if、#else、#elif、#endif 243
7.6.4 #define、#undef 244
7.6.5 #warning、#error 244
7.6.6 #line 245
7.6.7 結論 245
7.7 非主流關鍵字 245
7.7.1 引言 245
7.7.2 checked/unchecked 246
7.7.3 yield 247
7.7.4 lock 250
7.7.5 unsafe 252
7.7.6 sealed 253
7.7.7 結論 254
參考文獻 254
第8章 巔峰對決——走出誤區 255
8.1 什么才是不變:const和readonly 256
8.1.1 引言 256
8.1.2 從基礎到本質 257
8.1.3 比較,還是規則 259
8.1.4 進一步的探討 260
8.1.5 結論 263
8.2 後來居上:class和struct 263
8.2.1 引言 263
8.2.2 基本概念 263
8.2.3 相同點和不同點 264
8.2.4 經典示例 265
8.2.5 結論 268
8.3 歷史糾葛:特性和屬性 268
8.3.1 引言 268
8.3.2 概念引入 268
8.3.3 通用規則 270
8.3.4 特性的應用 271
8.3.5 示例 273
8.3.6 結論 277
8.4 面向抽象編程:接口和抽象類 277
8.4.1 引言 277
8.4.2 概念引入 277
8.4.3 相同點和不同點 279
8.4.4 經典示例 281
8.4.5 他山之石 283
8.4.6 結論 283
8.5 恩怨情仇:is和as 284
8.5.1 引言 284
8.5.2 概念引入 284
8.5.3 原理與示例說明 284
8.5.4 結論 285
8.6 貌合神離:覆寫和重載 286
8.6.1 引言 286
8.6.2 認識覆寫和重載 286
8.6.3 在多態中的應用 288
8.6.4 比較,還是規則 289
8.6.5 進一步的探討 290
8.6.6 結論 292
8.7 有深有淺的克隆:淺拷貝和深拷貝 292
8.7.1 引言 292
8.7.2 從對象克隆說起 292
8.7.3 淺拷貝和深拷貝的實現 294
8.7.4 結論 296
8.8 動靜之間:靜態和非靜態 296
8.8.1 引言 296
8.8.2 一言蔽之 297
8.8.3 分而治之 297
8.8.4 結論 302
8.9 集合通論 302
8.9.1 引言 302
8.9.2 中心思想——縱論集合 303
8.9.3 各分秋色——.NET集合類大觀 307
8.9.4 自我成全——實現自定義集合 314
8.9.5 結論 317
參考文獻 317
第9章 本來面目——框架詮釋 318
9.1 萬物歸宗:System.Object 319
9.1.1 引言 319
9.1.2 初識 319
9.1.3 分解 320
9.1.4 插曲:消失的成員 323
9.1.5 意義 325
9.1.6 結論 325
9.2 規則而定:對象判等 325
9.2.1 引言 326
9.2.2 本質分析 326
9.2.3 覆寫Equals方法 329
9.2.4 與GetHashCode方法同步 331
9.2.5 規則 332
9.2.6 結論 332
9.3 疑而不惑:interface“繼承”爭議 332
9.3.1 引言 332
9.3.2 從面向對象尋找答案 333
9.3.3 以IL探求究竟 334
9.3.4 System.Object真是
9.3.4 “萬物之宗”嗎 334
9.3.5 接口的繼承爭議 335
9.3.6 結論 335
9.4 給力細節:深入類型構造器 336
9.4.1 引言:一個故事 336
9.4.2 認識對象構造器和類型構造器 337
9.4.3 深入執行過程 339
9.4.4 回歸故事 341
9.4.5 結論 342
9.5 如此特殊:大話String 342
9.5.1 引言 342
9.5.2 問題迷局 343
9.5.3 什么是string 345
9.5.4 字符串創建 345
9.5.5 字符串恒定性 346
9.5.6 字符串駐留(String Interning) 346
9.5.7 字符串操作典籍 350
9.5.8 補充的禮物:StringBuilder 352
9.5.9 結論 354
9.6 簡易不簡單:認識枚舉 354
9.6.1 引言 355
9.6.2 枚舉類型解析 355
9.6.3 枚舉種種 358
9.6.4 位枚舉 360
9.6.5 規則與意義 361
9.6.6 結論 361
9.7 一脈相承:委托、匿名方法和Lambda
9.7 表達式 362
9.7.1 引言 362
9.7.2 解密委托 362
9.7.3 委托和事件 365
9.7.4 匿名方法 367
9.7.5 Lambda表達式 368
9.7.6 規則 368
9.7.7 結論 369
9.8 Name這回事兒 369
9.8.1 引言 369
9.8.2 暢聊Name 369
9.8.3 回到問題 371
9.8.4 結論 371
9.9 直面異常 371
9.9.1 引言 372
9.9.2 為何而拋 372
9.9.3 從try/catch/finally說起:解析異常
9.9.3 機制 375
9.9.4 .NET系統異常類 377
9.9.5 定義自己的異常類 379
9.9.6 異常法則 381
9.9.7 結論 382
參考文獻 382
第10章 格局之選——命名空間剖析 383
10.1 基礎——.NET框架概覽 384
10.1.1 引言 384
10.1.2 框架概覽 384
10.1.3 歷史變遷 385
10.1.4 結論 387
10.2 布局——框架類庫研究 387
10.2.1 引言 387
10.2.2 為什么了解 388
10.2.3 框架類庫的格局 388
10.2.4 一點補充 389
10.2.5 結論 390
10.3 根基——System命名空間 391
10.3.1 引言 391
10.3.2 從基礎類型說起 391
10.3.3 基本服務 392
10.3.4 結論 394
10.4 核心——System次級命名空間 394
10.4.1 引言 394
10.4.2 System.IO 395
10.4.3 System. Diagnostics 396
10.4.4 System.Runtime.Serialization和
10.4.4 System.Xml.Serialization 397
10.4.5 結論 399
參考文獻 399
第4部分 拾遺——.NET也有春天
第11章 接觸泛型 402
11.1 追溯泛型 403
11.1.1 引言 403
11.1.2 推進思維,為什么泛型 403
11.1.3 解析泛型——運行時本質 405
11.1.4 結論 406
11.2 了解泛型 406
11.2.1 引言 406
11.2.2 領略泛型——基礎概要 406
11.2.3 典型.NET泛型類 409
11.2.4 基礎規則 410
11.2.5 結論 411
11.3 深入泛型 411
11.3.1 引言 411
11.3.2 泛型方法 411
11.3.3 泛型接口 413
11.3.4 泛型委托 415
11.3.5 結論 415
11.4 實踐泛型 416
11.4.1 引言 416
11.4.2 最佳實踐 416
11.4.3 結論 421
參考文獻 421
第12章 如此安全性 422
12.1 怎么樣才算是安全 423
12.1.1 引言 423
12.1.2 怎么樣才算安全 423
12.1.3 .NET安全模型 423
12.1.4 結論 424
12.2 代碼訪問安全 424
12.2.1 引言 424
12.2.2 證據(Evidence) 425
12.2.3 權限(Permission)和權限集 426
12.2.4 代碼組(Code Group) 428
12.2.5 安全策略(Security Policy) 428
12.2.6 規則總結 429
12.2.7 結論 430
12.3 基于角色的安全 430
12.3.1 引言 430
12.3.2 Principal(主體) 430
12.3.3 Identity(標識) 431
12.3.4 PrincipalPermission 432
12.3.5 應用示例 432
12.3.6 結論 433
參考文獻 433
第5部分 未來——.NET技術展望
第13章 走向.NET 3.0/3.5變革 436
13.1 品讀新特性 437
13.1.1 引言 437
13.1.2 .NET新紀元 437
13.1.3 程序語言新特性 438
13.1.4 WPF、WCF、WF 438
13.1.5 Visual Studio 2008體驗 439
13.1.6 其他 439
13.1.7 結論 439
13.2 賞析C# 3.0 439
13.2.1 引言 440
13.2.2 對象初始化器
13.2.2 (Object Initializers) 440
13.2.3 集合初始化器
13.2.3 (Collection Initializers) 441
13.2.4 自動屬性
13.2.4 (Automatic Properties) 442
13.2.5 隱式類型變量(Implicitly Typed
13.2.5 Local Variables)和 隱式類型數組
13.2.5 (Implicitly Typed Array) 444
13.2.6 匿名類型(Anonymous Type) 445
13.2.7 擴展方法
13.2.7 (Extension Methods) 446
13.2.8 查詢表達式
13.2.8 (Query Expressions) 448
13.2.9 結論 448
13.3 LINQ體驗 449
13.3.1 引言 449
13.3.2 LINQ概覽 449
13.3.3 查詢操作符 451
13.3.4 LINQ to XML示例 451
13.3.5 規則 453
13.3.6 結論 453
13.4 LINQ江湖 453
13.4.1 引言 453
13.4.2 演義 453
13.4.3 基于LINQ的零代碼數據訪問
13.4.3 層實現 459
13.4.4 LINQ to Provider 462
13.4.5 結論 463
13.5 搶鮮Visual Studio 2008 463
13.5.1 引言 463
13.5.2 Visual Studio 2008概覽 464
13.5.3 新特性簡介 465
13.5.4 開發示例 465
13.5.5 結論 466
13.6 江湖一統:WPF、WCF、WF 467
13.6.1 引言 467
13.6.2 WPF 467
13.6.3 WCF 468
13.6.4 WF 469
13.6.5 結論 470
參考文獻 470
第14章 跟隨.NET 4.0腳步 472
14.1 .NET十年 473
14.1.1 引言 473
14.1.2 歷史腳步 473
14.1.3 未來之變 477
14.1.4 結論 479
14.2 .NET 4.0,第一眼 480
14.2.1 引言 480
14.2.2 第一眼 481
14.2.3 結論 484
14.3 動態變革:dynamic 484
14.3.1 引言 484
14.3.2 初探 485
14.3.3 本質:DLR 485
14.3.4 PK解惑 488
14.3.5 應用:動態編程 490
14.3.6 結論 491
14.4 趨勢必行,并行計算 491
14.4.1 引言 491
14.4.2 擁抱并行 492
14.4.3 TPL 493
14.4.4 PLINQ 495
14.4.5 并行補遺 496
14.4.6 結論 497
14.5 命名參數和可選參數 497
14.5.1 引言 497
14.5.2 一覽究竟 498
14.5.3 簡單應用 499
14.5.4 結論 499
14.6 協變與逆變 500
14.6.1 引言 500
14.6.2 概念解析 500
14.6.3 深入 502
14.6.4 結論 504
14.7 Lazy<T>點滴 504
14.7.1 引言 505
14.7.2 延遲加載 505
14.7.3 Lazy<T>登場 505
14.7.4 Lazy<T>本質 507
14.7.5 結論 509
14.8 Tuple一二 509
14.8.1 引言 509
14.8.2 Tuple為何物 510
14.8.3 Tuple Inside 511
14.8.4 優略之間 513
14.8.5 結論 514
參考文獻 514
後記:我寫的不是代碼 516
編後記:遇見幸福 521

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 412
絕版無法訂購

暢銷榜

客服中心

收藏

會員專區