TOP
0
0
【簡體曬書區】 單本79折,5本7折,活動好評延長至5/31,趕緊把握這一波!
Go語言極簡一本通:零基礎入門到項目實戰(簡體書)
滿額折

Go語言極簡一本通:零基礎入門到項目實戰(簡體書)

人民幣定價:99 元
定  價:NT$ 594 元
優惠價:87517
領券後再享88折
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:15 點
相關商品
商品簡介
作者簡介
名人/編輯推薦
目次

商品簡介

本書是一本Go語言入門書,全書共分為三部分。第一部分講解Go語言基礎知識,包括變量與簡單類型、數組、切片、流程控制、字典、函數、結構體與方法、接口等,可以幫助讀者快速掌握Go語言的基本程序結構。第二部分講解Go語言高效並發相關知識,包括協程與通道、並發資源、包管理和測試等,讓讀者對Go語言層面的並發支持有更深入的理解。第三部分講解Go語言項目實戰,包括Gin框架、生活點評項目實戰、賬戶管理系統實戰,以及OAuth 2.0的授權協議等。通過實戰,把前面講解的知識點運用起來,幫助讀者快速上手,積累項目經驗。

作者簡介

歡喜,微信公眾號 “面向加薪學習” 的作者,B站 “面向加薪學習”的作者, “GoCn” 小組成員,在社區連載了一系列 Go 語言相關的技術文章,並在B站發布了一系列Go語言相關視頻,均廣受歡迎。擁有多年國內一線互聯網公司從業經驗,主導全棧項目,擅長Go、Java、Vue、移動開發(Flutter)和小程序(Taro),擁有豐富的大型網站架構經驗。

名人/編輯推薦

Go語言具有天生支持高並發、語法簡潔等特點,因此在云計算、微服務、大數據、區塊鏈和物聯網等領域發展得如火如荼。

系統設計:從基礎知識、底層原理到有趣的案例,幫助讀者理解晦澀的概念,讓枯燥的編程變得有趣。

案例實操:本書設計了很多的代碼示例,從讀者的視角,演示了一些容易出bug的場景,以免讀者“掉到坑裡”。

本書還引入了很多生活化的場景,比如用美食、做飯、搶位置等例子比喻協程和通道的高並發原理,讓學習不再枯燥。保存


為什麼要學習Go語言?
Go語言具有天生支持高並發、語法簡潔等特點,因此在云計算、微服務、大數據、區塊鏈和物聯網等領域發展得如火如荼。開發者掌握Go語言,不僅可以作為進入“大廠”的敲門磚,還可以提高個人職場競爭力。
本書內容
本書是一本Go語言入門書,全書共分為三部分。
第一部分講解Go語言基礎知識,包括變量與簡單類型、數組、切片、流程控制、字典、函數、結構體與方法、接口等,內容相對簡潔,可以幫助讀者快速掌握Go語言的基本程序結構。
第二部分講解Go語言高效並發相關知識,包括協程與通道、並發資源、包管理和測試等,讓讀者對Go語言層面的並發支持有更深入的理解。
第三部分講解Go語言項目實戰,包括Gin框架、生活點評項目實戰、賬戶管理系統實戰,以及OAuth 2.0的授權協議等。實戰則把前面講解的知識點運用起來,幫助讀者快速上手,積累項目經驗。
本書特色
系統設計:從基礎知識、底層原理到有趣的案例,幫助讀者理解晦澀的概念,讓枯燥的編程變得有趣。
案例實操:本書設計了很多的代碼示例,從讀者的視角,演示了一些容易出bug的場景,以免讀者“掉到坑裡”。此外,本書還引入了很多生活化的場景,比如用美食、做飯、搶位置等例子比喻協程和通道的高並發原理,讓學習不再枯燥。
貼近實際:本書所用的例子均源於眾多學習者的反饋,其中,仿大眾點評小程序的後端完全用Go語言開發,前端用React開發,引導讀者一起從後端到前端、從0到1完整開發一個產品。
除此之外,在和學習者的交流過程中,筆者還總結了一些常見問題的共性及解決方法,並有針對性地融入案例中。
本書適合的讀者
1. 無編程經驗的初學者。
2. 有其他語言基礎,想學習Go語言的開發人員。


勘誤與反饋
在閱讀本書過程中,如遇到任何問題,都可以通過下面的公眾號與筆者交流反饋。

因時間及水平有限,書中難免有錯漏之處,敬請讀者不吝賜教,筆者將感激不盡。

目次

第一部分 基礎知識
第1章 起步 1
1.1 源代碼與程序 1
1.2 變量的命名 2
1.3 指針 4
1.4 包和文件 5
1.5 變量的生命周期 6
1.6 作用域 7
第2章 變量與簡單類型 9
2.1 運行hello_world.go 9
2.2 變量 10
2.3 字符串 11
2.3.1 修改字符串的大小寫 11
2.3.2 合並(拼接)字符串 12
2.3.3 使用制表符或換行符添加空白 13
2.3.4 刪除空格 13
2.4 數字 14
2.4.1 整數 15
2.4.2 浮點數 15
2.4.3 使用strconv.Itoa方法避免類型錯誤 15
2.5 注釋 16
2.6 小結 17
第3章 數組 18
3.1 數組簡介 18
3.2 初始化數組元素的3種方式 19
3.3 訪問數組元素 20
3.4 索引是從0而不是從1開始的 21
3.5 使用數組中的各個值 21
3.6 遍歷數組 22
3.7 循環 23
3.8 修改數組中的元素 24
3.9 使用列表時應避免索引錯誤 24
3.10 小結 25
第4章 切片 26
4.1 切片簡介 26
4.1.1 創建切片 27
4.1.2 訪問切片元素 30
4.1.3 遍歷切片元素 31
4.1.4 復制切片 32
4.2 修改、添加和刪除元素 33
4.2.1 修改切片元素 34
4.2.2 在切片中添加元素 34
4.2.3 從切片中刪除元素 36
4.3 使用切片時應避免索引錯誤 37
4.4 遍歷切片時容易犯的錯誤 38
4.5 小結 39
第5章 流程控制 41
5.1 if語句 41
5.2 條件測試 42
5.2.1 檢查是否相等 42
5.2.2 比較數字 43
5.2.3 檢查多個條件 43
5.2.4 檢查在切片中是否包含特定值 44
5.2.5 布爾表達式 44
5.2.6 if-else 結構 45
5.3 switch語句 46
5.4 循環語句 49
5.5 小結 51
第6章 字典 52
6.1 字典簡介 52
6.2 創建字典 54
6.3 使用字典 55
6.3.1 訪問字典中的值 56
6.3.2 添加鍵值對 57
6.3.3 修改字典中的值 57
6.3.4 刪除鍵值對 58
6.4 遍歷字典 59
6.4.1 在字典中嵌入切片 59
6.4.2 在字典中嵌入字典 61
6.5 避免遍歷 61
6.6 小結 63
第7章 函數 64
7.1 定義函數 64
7.1.1 向函數傳遞信息 67
7.1.2 實際參數和形式參數 67
7.1.3 位置實參 68
7.1.4 傳遞數組 69
7.1.5 傳遞切片 70
7.1.6 避免實參錯誤 71
7.2 返回值 71
7.2.1 返回簡單值 71
7.2.2 返回字典 72
7.3 返回多個值 72
7.4 函數變量 75
7.5 匿名函數 78
7.6 閉包 79
7.7 變長函數 81
7.8 延遲函數調用 82
7.9 panic 83
7.10 recover 84
7.11 小結 85
第8章 結構體與方法 86
8.1 結構體概述 86
8.2 結構體的使用 88
8.3 匿名成員與結構體嵌套 89
8.4 結構體與JSON 91
8.5 方法 93
8.6 指針接收者方法 94
8.7 實參接收者type與*type 96
8.8 值方法與指針方法的區別 98
8.9 方法與表達式 100
8.10 小結 100


第9章 接口 102
9.1 接口的定義及使用 102
9.2 非侵入式接口 104
9.3 使用指針接收者實現接口 106
9.4 接口的嵌套 107
9.5 接口值 110
9.6 error接口 112
9.7 類型斷言 113
9.8 類型分支 114
9.9 動態類型、動態值和靜態類型 114
9.10 小結 118
第二部分 高效並發
第10章 協程與通道 119
10.1 並發 119
10.2 協程並發模型 121
10.3 goroutine(協程)的使用 124
10.4 channel(通道) 125
10.5 channel進階 126
10.6 單向channel 129
10.7 無緩衝channel 130
10.8 緩衝channel 131
10.9 select 132
10.10 關閉channel 135
10.11 小結 136
第11章 並發資源 137
11.1 競態 137
11.2 sync.Mutex與sync.RWMutex 139
11.3 條件變量 146
11.4 原子操作 149
11.5 WaitGroup類型與Once類型 152
11.6 context.Context類型 155
11.7 小結 159
第12章 包管理 161
12.1 go mod 161
12.2 go mod中的命令 162
12.3 小結 164
第13章 測試 165
第14章 反射 169
14.1 反射簡介 169
14.2 動態調用無參方法 170
14.3 動態調用有參方法 170
14.4 動態struct tag解析 171
14.5 對類型進行轉換和賦值 172
14.6 使用Kind與switch處理不同分支 174
14.7 判斷是否實現了某接口 175
第三部分 項目實戰
第15章 Gin框架 177
15.1 HTTP簡介 177
15.2 Gin框架簡介 183
15.3 RESTful 184
15.4 路由參數 185
15.5 URL查詢參數的獲取 186
15.6 接收數組和map 187
15.7 獲取Form表單參數 188
15.8 JSON渲染輸出 190
第16章 生活點評項目實戰 193
16.1 總體需求分析 193
16.2 開發精要 196
16.3 接口設計 197
16.4 餐廳詳情模塊 198
16.5 數據庫訪問層 200
16.6 服務層 203
16.7 路由和方法 204
16.8 團購下單模塊 204
16.9 數據庫訪問層 205
16.10 團購下單――服務層 205
16.11 團購下單――路由和方法 206
16.12 小結 208
第17章 賬戶管理系統實戰 209
17.1 啟動一個簡單的RESTful服務器 209
17.2 Viper 211
17.3 日志追蹤 217
17.4 定義錯誤碼 220
17.5 創建賬戶 224
17.6 刪除賬戶 228
17.7 更新賬戶 229
17.8 賬戶列表 231
17.9 根據賬戶名稱查詢用戶信息 234
17.10 OAuth 2.0簡介 236
17.11 OAuth 2.0 的四種授權模式 237

您曾經瀏覽過的商品

購物須知

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

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

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

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

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

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

暢銷榜

客服中心

收藏

會員專區