3dwoo大學簡體電腦書店
Go語言設計與實現
( 簡體 字)
作者:左書祺(@Draven)類別:1. -> 程式設計 -> Go語言
出版社:人民郵電出版社Go語言設計與實現 3dWoo書號: 55422
詢問書籍請說出此書號!
有庫存
NT售價: 700
出版日:11/1/2021
頁數:410
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 字 )
ISBN:9787115576613 加入購物車加到我的最愛 (請先登入會員)
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社)
前言 iii
第 1章 調試源代碼 1
1.1 Go語言源代碼 1
1.2 編譯源代碼 2
1.3 中間代碼 3
1.4 小結 4
第 2章 編譯原理 5
2.1 編譯過程 5
2.1.1 預備知識 5
2.1.2 編譯四階段 7
2.1.3 編譯器入口 10
2.1.4 小結 11
2.1.5 延伸閱讀 12
2.2 詞法分析和語法分析 12
2.2.1 詞法分析 12
2.2.2 語法分析 17
2.2.3 小結 26
2.2.4 延伸閱讀 26
2.3 類型檢查 26
2.3.1 強弱類型 26
2.3.2 靜態類型與動態類型 27
2.3.3 執行過程 28
2.3.4 小結 34
2.4 中間代碼生成 34
2.4.1 概述 34
2.4.2 配置初始化 35
2.4.3 遍歷和替換 37
2.4.4 SSA生成 40
2.4.5 小結 44
2.5 機器碼生成 44
2.5.1 指令集架構 44
2.5.2 機器碼生成 45
2.5.3 小結 49
2.5.4 延伸閱讀 50
第3章 數據結構 51
3.1 數組 51
3.1.1 概述 51
3.1.2 初始化 52
3.1.3 訪問和賦值 55
3.1.4 小結 57
3.1.5 延伸閱讀 58
3.2 切片 58
3.2.1 數據結構 58
3.2.2 初始化 59
3.2.3 訪問元素 63
3.2.4 追加和擴容 64
3.2.5 復制切片 67
3.2.6 小結 68
3.2.7 延伸閱讀 68
3.3 哈希表 68
3.3.1 設計原理 69
3.3.2 數據結構 72
3.3.3 初始化 74
3.3.4 讀寫操作 77
3.3.5 小結 88
3.3.6 延伸閱讀 88
3.4 字符串 88
3.4.1 數據結構 89
3.4.2 解析過程 89
3.4.3 拼接 91
3.4.4 類型轉換 93
3.4.5 小結 95
3.4.6 延伸閱讀 95
第4章 語言特性 96
4.1 函數調用 96
4.1.1 調用慣例 96
4.1.2 參數傳遞 101
4.1.3 小結 104
4.1.4 延伸閱讀 104
4.2 接口 105
4.2.1 概述 105
4.2.2 數據結構 111
4.2.3 類型轉換 113
4.2.4 類型斷言 116
4.2.5 動態派發 118
4.2.6 小結 122
4.2.7 延伸閱讀 122
4.3 反射 123
4.3.1 三大法則 124
4.3.2 類型和值 127
4.3.3 更新變量 129
4.3.4 實現協議 130
4.3.5 方法調用 132
4.3.6 小結 135
4.3.7 延伸閱讀 135
第5章 常用關鍵字 136
5.1 for和range 136
5.1.1 現象 137
5.1.2 經典循環 140
5.1.3 范圍循環 141
5.1.4 小結 147
5.2 select 148
5.2.1 現象 148
5.2.2 數據結構 151
5.2.3 實現原理 151
5.2.4 小結 160
5.2.5 延伸閱讀 161
5.3 defer 161
5.3.1 現象 161
5.3.2 數據結構 163
5.3.3 執行機制 164
5.3.4 堆中分配 164
5.3.5 棧上分配 168
5.3.6 開放編碼 169
5.3.7 小結 173
5.3.8 延伸閱讀 174
5.4 panic和recover 174
5.4.1 現象 175
5.4.2 數據結構 177
5.4.3 程序崩潰 178
5.4.4 崩潰恢復 179
5.4.5 小結 181
5.4.6 延伸閱讀 181
5.5 make和new 181
5.5.1 make 182
5.5.2 new 183
5.5.3 小結 184
第6章 并發編程 185
6.1 上下文 185
6.1.1 設計原理 186
6.1.2 默認上下文 187
6.1.3 取消信號 188
6.1.4 傳值方法 192
6.1.5 小結 192
6.1.6 延伸閱讀 192
6.2 同步原語與鎖 193
6.2.1 基本原語 193
6.2.2 擴展原語 209
6.2.3 小結 218
6.2.4 延伸閱讀 218
6.3 計時器 219
6.3.1 設計原理 219
6.3.2 數據結構 222
6.3.3 狀態機 223
6.3.4 觸發計時器 229
6.3.5 小結 231
6.3.6 延伸閱讀 232
6.3.7 歷史變更 232
6.4 Channel 232
6.4.1 設計原理 232
6.4.2 數據結構 234
6.4.3 創建Channel 235
6.4.4 發送數據 237
6.4.5 接收數據 240
6.4.6 關閉Channel 245
6.4.7 小結 246
6.4.8 延伸閱讀 246
6.5 調度器 246
6.5.1 設計原理 247
6.5.2 數據結構 255
6.5.3 調度器啟動 260
6.5.4 創建Goroutine 261
6.5.5 調度循環 266
6.5.6 觸發調度 269
6.5.7 線程管理 274
6.5.8 小結 276
6.5.9 延伸閱讀 276
6.6 網絡輪詢器 276
6.6.1 設計原理 276
6.6.2 數據結構 280
6.6.3 多路復用 281
6.6.4 小結 288
6.6.5 延伸閱讀 289
6.7 系統監控 289
6.7.1 設計原理 289
6.7.2 監控循環 289
6.7.3 小結 296
第7章 內存管理 297
7.1 內存分配器 297
7.1.1 設計原理 297
7.1.2 內存管理組件 304
7.1.3 內存分配 317
7.1.4 小結 322
7.1.5 延伸閱讀 322
7.1.6 歷史變更 322
7.2 垃圾收集器 323
7.2.1 設計原理 323
7.2.2 演進過程 331
7.2.3 實現原理 334
7.2.4 小結 358
7.2.5 延伸閱讀 358
7.3 棧空間管理 358
7.3.1 設計原理 359
7.3.2 棧操作 363
7.3.3 小結 369
7.3.4 延伸閱讀 370
第8章 元編程 371
8.1 插件系統 371
8.1.1 設計原理 371
8.1.2 動態庫 373
8.1.3 小結 376
8.1.4 延伸閱讀 376
8.2 代碼生成 377
8.2.1 設計原理 377
8.2.2 代碼生成 377
8.2.3 小結 382
第9章 標準庫 383
9.1 JSON 383
9.1.1 設計原理 383
9.1.2 序列化 385
9.1.3 反序列化 389
9.1.4 小結 392
9.2 HTTP 392
9.2.1 設計原理 393
9.2.2 客戶端 395
9.2.3 服務端 402
9.2.4 小結 406
9.3 數據庫 406
9.3.1 設計原理 406
9.3.2 驅動接口 407
9.3.3 小結 410
本書基于在讀者之間廣為傳閱的同名開源電子書《Go語言設計與實現》,是難得一見的Go語言進階圖書。

書中結合近200幅生動的全彩圖片,配上詳盡的文字剖析與精選源代碼段,為讀者奉上了異彩紛呈、系統完善的Go語言解讀。本書內容分為9章:調試源代碼、編譯原理、數據結構、語言特性、常用關鍵字、并發編程、內存管理、元編程和標準庫,幾乎涵蓋了Go語言從編譯到運行的方方面面。書中的代碼片段基于Go 1.15。通過閱讀本書,讀者不僅能夠深入理解Go語言的實現細節,而且可以深刻認識設計背后的原理,同時提升閱讀源代碼的技能。
pagetop