《Go語言實戰》一書由威廉·甘迺迪、布賴恩·克特森 、埃里克·聖馬丁 所著,人民郵電出版社出版發行。
基本介紹
- 書名:Go語言實戰
- 作者:威廉·甘迺迪、布賴恩·克特森 、埃里克·聖馬丁
- ISBN:9787115445353
- 出版社:人民郵電出版社
出版信息,內容簡介,作者簡介,目錄,
出版信息
作者:威廉·甘迺迪、布賴恩·克特森、埃里克·聖馬丁
出版社:人民郵電出版社
譯者:李兆海
出版年:2017-3-1
頁數:224
定價:CNY 59.00
裝幀:平裝
ISBN:9787115445353
內容簡介
Go語言結合了底層系統語言的能力以及現代語言的高級特性,旨在降低構建簡單、可靠、高效軟體的門檻。本書向讀者提供一個專注、全面且符合語言習慣的視角。Go語言實戰同時關注語言的規範和實現,涉及的內容包括語法、類型系統、並發、管道、測試,以及其他一些主題。
作者簡介
William Kennedy,是一位熟練的軟體開發者。
Brian Ketelsen和Erik St. Martin是全球Go語言大會GopherCon的組織者,也是Go語言框架Skynet的聯合作者。
李兆海,多年專注於後端分散式網路服務開發,曾使用過多個流行後端技術和相關架構實踐,是Go語言和Docker的早期使用者和推廣者,《第1本Docker書》的譯者。作為項目技術負責人,成功開發了百萬用戶級直播系統。
目錄
第1章 關於Go語言的介紹 1
1.1 用Go解決現代編程難題 2
1.1.1 開發速度 2
1.1.2 並發 3
1.1.3 Go語言的類型系統 5
1.1.4 記憶體管理 7
1.2 你好,Go 7
1.3 小結 8
第2章 快速開始一個Go程式 9
2.1 程式架構 9
2.2 main包 11
2.3 search包 13
2.3.1 search.go 13
2.3.2 feed.go 21
2.3.3 match.go default.go 24
2.4 RSS匹配器 30
2.5 小結 36
第3章 打包和工具鏈 37
3.1 包 37
3.1.1 包名慣例 38
3.1.2 main包 38
3.2 導入 39
3.2.1 遠程導入 40
3.2.2 命名導入 40
3.3 函式init 41
3.4 使用Go的工具 42
3.5 進一步介紹Go開發工具 44
3.5.1 go vet 44
3.5.2 Go代碼格式化 45
3.5.3 Go語言的文檔 45
3.6 與其他Go開發者合作 48
3.7 依賴管理 48
3.7.1 第三方依賴 49
3.7.2 對gb的介紹 50
3.8 小結 52
第4章 數組、切片和映射 53
4.1 數組的內部實現和基礎功能 53
4.1.1 內部實現 53
4.1.2 聲明和初始化 54
4.1.3 使用數組 55
4.1.4 多維數組 58
4.1.5 在函式間傳遞數組 59
4.2 切片的內部實現和基礎功能 60
4.2.1 內部實現 60
4.2.2 創建和初始化 61
4.2.3 使用切片 63
4.2.4 多維切片 74
4.2.5 在函式間傳遞切片 75
4.3 映射的內部實現和基礎功能 76
4.3.1 內部實現 76
4.3.2 創建和初始化 78
4.3.3 使用映射 79
4.3.4 在函式間傳遞映射 81
4.4 小結 82
第5章 Go語言的類型系統 83
5.1 用戶定義的類型 83
5.2 方法 87
5.3 類型的本質 90
5.3.1 內置類型 91
5.3.2 引用類型 91
5.3.3 結構類型 93
5.4 接口 95
5.4.1 標準庫 96
5.4.2 實現 98
5.4.3 方法集 99
5.4.4 多態 103
5.5 嵌入類型 105
5.6 公開或未公開的標識符 113
5.7 小結 121
第6章 並發 122
6.1 並發與並行 122
6.2 goroutine 125
6.3 競爭狀態 132
6.4 鎖住共享資源 135
6.4.1 原子函式 135
6.4.2 互斥鎖 138
6.5 通道 140
6.5.1 無緩衝的通道 141
6.5.2 有緩衝的通道 146
6.6 小結 149
第7章 併發模式 150
7.1 runner 150
7.2 pool 158
7.3 work 168
7.4 小結 174
第8章 標準庫 176
8.1 文檔與原始碼 177
8.2 記錄日誌 178
8.2.1 log包 179
8.2.2 定製的日誌記錄器 182
8.2.3 結論 186
8.3 編碼 解碼 187
8.3.1 解碼JSON 187
8.3.2 編碼JSON 192
8.3.3 結論 193
8.4 輸入和輸出 193
8.4.1 Writer和Reader接口 194
8.4.2 整合併完成工作 195
8.4.3 簡單的curl 199
8.4.4 結論 200
8.5 小結 200
第9章 測試和性能 201
9.1 單元測試 201
9.1.1 基礎單元測試 202
9.1.2 表組測試 205
9.1.3 模仿調用 208
9.1.4 測試服務端點 212
9.2 示例 217
9.3 基準測試 220
9.4 小結 224