TOP
英國出版界指標大獎肯定!A.F. Steadman 獲年度作家,《史坎德》系列帶你踏上熱血奇幻旅程
Go語言趣學指南(簡體書)
滿額折

Go語言趣學指南(簡體書)

商品資訊

人民幣定價:69 元
定價
:NT$ 414 元
優惠價
87360
海外經銷商無庫存,到貨日平均30天至45天
下單可得紅利積點 :10 點
商品簡介
名人推薦
目次

商品簡介

《Go語言趣學指南》是一本面向Go語言初學者的書,循序漸進地介紹了使用Go語言所必需的知識,展示了非常多生動有趣的例子,並通過提供大量練習來加深讀者對書中所述內容的理解。本書共分8個單元,分別介紹變量、常量、分支和循環等基礎語句,整數、浮點數和字符串等常用類型,類型、函數和方法,數組、切片和映射,結構和接口,指針、nil和錯誤處理方法,併發和狀態保護,並且每個單元都包含相應的章節和單元測試。
《Go語言趣學指南》適合對初學Go語言有不同需求的程序員閱讀。無論是剛開始學習Go語言的新手,還是想要回顧Go語言基礎知識的Go語言使用者,只要是想用Go做開發,無論是開發小型腳本還是大型程序,《Go語言趣學指南》都會非常有幫助。

名人推薦

Go是穀歌公司為了解決重大問題而設計的一種小型編程語言。完成大型項目需要大型團隊,而大型團隊中團隊成員的經驗水平往往各不相同。Go是一種小巧卻功能強大的語言,它能夠被任何人理解和使用,無論其經驗如何。
快速、現代的編程語言能讓業餘愛好者、初學者和專業人員都受益。你需要的正是這樣的語言。本書針對Go語言基礎知識提供了實操性的指導,使你能夠掌握Go語法,使用類型和函數,探索狀態和併發等更重要的概念,並通過大量練習來鞏固學到的知識。
本書包括以下內容:
●切片、接口、指針和併發等重要語言概念;
●地鼠太空航行、火星探測器、文本加密以及人類繁衍模擬等7個單元實驗;
●無須安裝即可在Go Playground中運行的示例。
本書面向所有熟悉計算機編程以及渴望獲得這一技能的人。

目次

目 錄

第0單元 入門

第 1章 各就各位,預備,Go! 3

1.1 什麼是Go 4

1.2 Go Playground 6

1.3 包和函數 7

1.4 唯一允許的大括號放置風格 8

1.5 小結 9

實驗:playground.go 10

第 1單元 命令式編程

第 2章 被美化的計算器 13

2.1 執行計算 13

2.2 格式化輸出 15

2.3 常量和變量 16

2.4 走捷徑 18

2.4.1 一次聲明多個變量 18

2.4.2 增量並賦值操作符 18

2.5 數字遊戲 19

2.6 小結 20

實驗:malacandra.go 21

第3章 循環和分支 22

3.1 真或假 23

3.2 比較 24

3.3 使用if實現分支判斷 25

3.4 邏輯運算符 26

3.5 使用switch實現分支判斷 28

3.6 使用循環實現重複執行 30

3.7 小結 31

實驗:guess.go 32

第4章 變量作用域 33

4.1 審視作用域 34

4.2 簡短聲明 35

4.3 作用域的範圍 37

4.4 小結 39

實驗:random-dates.go 39

第5章 單元實驗:前往火星的航行票 40

第 2單元 類型

第6章 實數 45

6.1 聲明浮點類型變量 46

6.1.1 單精度浮點數 47

6.1.2 零值 47

6.2 打印浮點類型 48

6.3 浮點精確性 49

6.4 比較浮點數 51

6.5 小結 51

實驗:piggy.go 52

第7章 整數 53

7.1 聲明整數類型變量 54

7.1.1 為不同場合而設的整數類型 54

7.1.2 瞭解類型 56

7.2 為8位顏色使用uint8類型 56

7.3 整數回繞 58

7.3.1 聚焦二進制位 58

7.3.2 避免時間回繞 60

7.4 小結 61

實驗:piggy.go 62

第8章 大數 63

8.1 擊中天花板 63

8.2 big包 65

8.3 大小非同尋常的常量 66

8.4 小結 68

實驗:cains.go 68

第9章 多語言文本 69

9.1 聲明字符串變量 70

9.2 字符、代碼點、符文和字節 71

9.3 拉弦 73

9.4 使用凱撒加密法處理字符 73

9.5 將字符串解碼為符文 76

9.6 小結 77

實驗:caesar.go 78

實驗:international.go 78

第 10章 類型轉換 79

10.1 類型不能混合使用 79

10.2 數字類型轉換 81

10.3 類型轉換的危險之處 82

10.4 字符串轉換 83

10.5 轉換布爾值 85

10.6 小結 86

實驗:input.go 86

第 11章 單元實驗:維吉尼亞加密法 87

實驗:decipher.go 88

實驗:cipher.go 89

第3單元 構建塊

第 12章 函數 93

12.1 函數聲明 94

12.2 編寫函數 97

12.3 小結 99

實驗:functions.go 99

第 13章 方法 100

13.1 聲明新類型 101

13.2 引入自定義類型 102

13.3 通過方法為類型添加行為 103

13.4 小結 105

實驗:methods.go 106

第 14章 一等函數 107

14.1 將函數賦值給變量 108

14.2 將函數傳遞給其他函數 109

14.3 聲明函數類型 110

14.4 閉包和匿名函數 111

14.5 小結 113

實驗:calibrate.go 114

第 15章 單元實驗:溫度錶 115

第4單元 收集器

第 16章 勞苦功高的數組 119

16.1 聲明數組並訪問其元素 119

16.2 小心越界 121

16.3 使用複合字面量初始化數組 121

16.4 迭代數組 122

16.5 數組被複製 123

16.6 由數組組成的數組 125

16.7 小結 125

實驗:chess.go 126

第 17章 切片:指向數組的窗口 127

17.1 切分數組 128

17.2 切片的複合字面量 130

17.3 切片的威力 130

17.4 帶有方法的切片 132

17.5 小結 133

實驗:terraform.go 133

第 18章 更大的切片 134

18.1 append函數 134

18.2 長度和容量 135

18.3 詳解append函數 136

18.4 三索引切分操作 137

18.5 使用make函數對切片實行預分配 138

18.6 聲明可變參數函數 139

18.7 小結 140

實驗:capacity.go 140

第 19章 無所不能的映射 141

19.1 聲明映射 142

19.2 映射不會被複製 143

19.3 使用make函數對映射實行預分配 144

19.4 使用映射進行計數 145

19.5 使用映射和切片實現數據分組 146

19.6 將映射用作集合 147

19.7 小結 148

實驗:words.go 148

第 20章 單元實驗:切片人生 150

20.1 開天闢地 150

20.1.1 觀察世界 151

20.1.2 激活細胞 151

20.2 適者生存 152

20.2.1 存活還是死亡 152

20.2.2 統計鄰近細胞 152

20.2.3 遊戲邏輯 153

20.3 平行世界 153

第5單元 狀態與行為

第 21章 結構 157

21.1 聲明結構 157

21.2 通過類型複用結構 159

21.3 通過複合字面量初始化結構 159

21.4 結構被複製 161

21.5 由結構組成的切片 161

21.6 將結構編碼為JSON 162

21.7 使用結構標簽定制JSON 164

21.8 小結 165

實驗:landing.go 165

第 22章 Go沒有類 166

22.1 將方法綁定到結構 166

22.2 構造函數 168

22.3 類的替代品 169

22.4 小結 171

實驗:landing.go 171

實驗:distance.go 171

第 23章 組合與轉發 173

23.1 合併結構 174

23.2 實現自動的轉發方法 176

23.3 命名衝突 178

23.4 小結 180

實驗:gps.go 180

第 24章 接口 181

24.1 接口類型 182

24.2 探索接口 185

24.3 滿足接口 187

24.4 小結 189

實驗:marshal.go 189

第 25章 單元實驗:火星上的動物避難所 190

第6單元 深入Go語言

第 26章 關於指針的二三事 195

26.1 &和* 196

26.2 指針的作用就是指向 199

26.2.1 指向結構的指針 201

26.2.2 指向數組的指針 202

26.3 實現修改 203

26.3.1 將指針用作形參 203

26.3.2 指針接收者 204

26.3.3 內部指針 206

26.3.4 修改數組 207

26.4 隱式指針 208

26.4.1 映射也是指針 208

26.4.2 切片指向數組 208

26.5 指針和接口 209

26.6 明智地使用指針 210

26.7 小結 211

實驗:turtle.go 211

第 27章 關於nil的紛紛擾擾 212

27.1 通向驚恐的nil指針 213

27.2 保護你的方法 214

27.3 nil函數值 216

27.4 nil切片 217

27.5 nil映射 218

27.6 nil接口 218

27.7 nil之外的另一個選擇 219

27.8 小結 220

實驗:knights.go 221

第 28章 孰能無過 222

28.1 處理錯誤 223

28.2 優雅的錯誤處理 224

28.2.1 文件寫入 225

28.2.2 關鍵字defer 227

28.2.3 創造性的錯誤處理 228

28.3 新的錯誤 229

28.3.1 按需返回錯誤 231

28.3.2 自定義錯誤類型 232

28.4 不要驚恐 235

28.4.1 其他語言中的異常 235

28.4.2 如何引發驚恐 236

28.4.3 處理驚恐 237

28.5 小結 237

實驗:url.go 238

第 29章 單元實驗:數獨規則 239

第7單元 併發編程

第30章 goroutine和併發 243

30.1 啟動goroutine 244

30.2 不止一個goroutine 245

30.3 通道 247

30.4 使用select處理多個通道 249

30.5 阻塞和死鎖 251

30.6 地鼠裝配線 252

30.7 小結 256

實驗:remove-identical.go 256

實驗:split-words.go 256

第31章 併發狀態 257

31.1 互斥鎖 258

31.2 長時間運行的工作進程 262

31.3 小結 267

實驗:positionworker.go 268

實驗:rover.go 268

第32章 單元實驗:尋找火星生命 269

32.1 可供活動的網格 269

32.2 報告發現 270

結語:何去何從 273

習題答案(網上下載)

購物須知

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

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

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

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

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

優惠價:87 360
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區