中图网(原中国图书网):网上书店,尾货特色书店,30万种特价书低至2折!

歡迎光臨中圖網 請 | 注冊
> >
打開Go語言之門 入門、實戰與進階

包郵 打開Go語言之門 入門、實戰與進階

作者:飛雪無情
出版社:機械工業出版社出版時間:2022-10-01
開本: 16開 頁數: 228
中 圖 價:¥62.4(7.0折) 定價  ¥89.0 登錄后可看到會員價
加入購物車 收藏
開年大促, 全場包郵
?新疆、西藏除外
本類五星書更多>

打開Go語言之門 入門、實戰與進階 版權信息

打開Go語言之門 入門、實戰與進階 本書特色

資深Go專家從基礎知識、底層原理、工程實踐3個維度帶你快速掌握Go語言編程方法與技巧

打開Go語言之門 入門、實戰與進階 內容簡介

通過不斷思考和整理,作者編寫了這本更具系統性也更通俗易懂的Go語言入門和進階書籍,以幫助學習者少走彎路,比其他人更快一步提升職業競爭力。
本書共包含5個部分。
第1部分:快速入門Go語言。作者挑選了變量、常量、基礎數據類型、函數和方法、結構體和接口等知識點進行介紹。這部分內容相對簡潔,但已經足夠讓你掌握Go的基本程序結構了。
第2部分:Go語言的高效并發。這部分主要介紹goroutine、channel、同步原語等知識,讓你對Go語言層面的并發支持有更深入的理解,并且可以編寫自己的Go語言并發程序。這個部分*后一章專門介紹常用的并發模式,可以拿來即用,以更好地控制并發。
第3部分:深入理解Go語言。這部分講解Go語言底層原理和高級功能,比如slice的底層是怎樣的、為什么這么高效等。這部分內容也是作者特意設計的,跟著作者一起研究底層原理,可避免初學者不求甚解的通病。總之,只有理解了底層原理,你才能更靈活地編寫程序并高效地應對問題。
第4部分:Go語言工程管理。學習一門語言,不僅要掌握它本身的知識,還要掌握模塊管理、性能優化等周邊技能,因為這些技能可以幫助你更好地進行多人協作,提高開發效率,寫出更高質量的代碼。你可以在這部分學到如何測試Go語言代碼以提高代碼質量、如何做好性能優化、如何使用第三方庫來提高自己項目的開發效率等。
第5部分:Go語言泛型。這是Go語言在1.18版本中新增的特性,也是大家期待已久的特性。在這一部分作者會帶你學習Go語言泛型的使用,以及如何使用泛型來提高效率和簡化代碼。

打開Go語言之門 入門、實戰與進階 目錄

前言 學習Go語言,抓住未來的機遇

**部分 快速入門Go語言

第1章 基礎入門:Hello, Go語言 2

1.1 Hello,World 2

1.2 程序結構分析 3

1.3 搭建Go語言開發環境 4

1.3.1 在Windows下安裝 4

1.3.2 在Linux下安裝 4

1.3.3 在macOS下安裝 4

1.3.4 安裝測試 4

1.3.5 環境變量設置 5

1.4 項目結構 5

1.5 編譯發布 6

1.6 跨平臺編譯 6

1.7 Go編輯器推薦 7

1.8 小結 8

第2章 數據類型:Go語言的基石 9

2.1 一個簡單示例 9

2.2 基礎類型 11

2.2.1 整型 11

2.2.2 浮點型 11

2.2.3 布爾型 12

2.2.4 字符串 12

2.2.5 零值 12

2.3 變量 13

2.3.1 變量簡短聲明 13

2.3.2 指針 13

2.3.3 賦值 13

2.4 常量 14

2.4.1 常量的定義 14

2.4.2 iota 14

2.5 字符串的使用 15

2.5.1 字符串和數字互轉 15

2.5.2 strings包 16

2.6 小結 16

第3章 

控制結構:if、for、switch

 那些事兒 17

3.1 if條件語句 17

3.2 switch選擇語句 19

3.3 for循環語句 20

3.4 小結 22

第4章 

集合類型:如何正確使用

 array、slice和map 23

4.1 數組 24

4.1.1 數組聲明 24

4.1.2 數組循環 25

4.2 切片 25

4.2.1 基于數組生成切片 26

4.2.2 切片的修改 26

4.2.3 切片的聲明 27

4.2.4 append函數 27

4.2.5 切片元素循環 28

4.3 映射 28

4.3.1 創建和初始化map 28

4.3.2 獲取和刪除map 29

4.3.3 遍歷map 29

4.3.4 獲取map的大小 30

4.4 string和[]byte 30

4.5 小結 31

第5章 

函數和方法:如何區分函數

 和方法 32

5.1 函數 33

5.1.1 函數初探 33

5.1.2 函數聲明 33

5.1.3 多值返回 34

5.1.4 返回值命名 35

5.1.5 可變參數 36

5.1.6 包級函數 37

5.1.7 匿名函數和閉包 37

5.2 方法 39

5.2.1 不同于函數的方法 39

5.2.2 值和指針類型接收者 39

5.3 小結 40

第6章 

struct和interface:隱式的

 接口實現 42

6.1 結構體 43

6.1.1 結構體的定義 43

6.1.2 聲明和使用 44

6.1.3 結構體的字段 44

6.2 接口 45

6.2.1 接口的定義 45

6.2.2 接口的實現 46

6.2.3 值和指針類型接收者 47

6.3 工廠函數 48

6.4 繼承和組合 49

6.5 類型斷言 50

6.6 小結 52

第7章 

錯誤處理:如何更優雅地

 處理程序異常和錯誤 53

7.1 錯誤 54

7.1.1 error接口 54

7.1.2 error工廠函數 55

7.1.3 自定義error 55

7.1.4 error斷言 56

7.2 錯誤嵌套 56

7.2.1 Error Wrapping功能 56

7.2.2 errors.Unwrap函數 57

7.2.3 errors.Is函數 57

7.2.4 errors.As函數 58

7.3 defer函數 58

7.4 panic函數 59

7.5 recover函數 60

7.6 小結 60

第二部分 Go語言的高效并發

第8章 

goroutine和channel:

 并發的基礎 62

8.1 什么是并發 63

8.2 進程和線程 63

8.2.1 進程 63

8.2.2 線程 64

8.3 協程 64

8.4 管道 65

8.4.1 聲明一個管道 65

8.4.2 無緩沖管道 66

8.4.3 有緩沖管道 66

8.4.4 關閉管道 67

8.4.5 單向管道 67

8.5 select+channel示例 68

8.6 小結 69

第9章 

同步原語:讓你對并發控制

 得心應手 70

9.1 資源競爭 70

9.2 同步原語 71

9.2.1 sync.Mutex 71

9.2.2 sync.RWMutex 72

9.2.3 sync.WaitGroup 73

9.2.4 sync.Once 75

9.2.5 sync.Cond 76

9.3 小結 77

第10章 

Context:多協程并發控制

 神器 79

10.1 協程如何退出 79

10.2 Context的使用示例 81

10.3 Context詳解 82

10.4 Context樹 83

10.5 使用Context取消多個協程 84

10.6 Context傳值 85

10.7 Context使用原則 85

10.8 小結 86

第11章 

并發模式:拿來即用的

 經驗總結 87

11.1 for select循環模式 87

11.2 select timeout模式 88

11.3 流水線模式 89

11.4 扇出和扇入模式 92

11.5 Future模式 94

11.6 小結 96

第12章 

并發技巧:高效并發

 安全的字節池 97

12.1 字節切片 97

12.2 高效字節池 98

12.3 使用BytePoolCap 99

12.4 

BytePoolCap與sync.Pool的

 對比 99

12.5 小結 101

第三部分 深入理解Go語言

第13章 

指針詳解:什么情況下

 應該使用指針 104

13.1 什么是指針 104

13.2 指針的聲明和定義 105

13.3 指針的操作 107

13.4 指針參數 107

13.5 指針接收者 108

13.6 什么情況下使用指針 108

13.7 小結 109

第14章 

參數傳遞:值、引用以及

 指針的區別 110

14.1 修改參數 111

14.2 值類型 112

14.3 指針類型 113

14.4 引用類型 114

14.4.1 map 114

14.4.2 chan 116

14.5 類型的零值 116

14.6 小結 117

第15章 

內存分配:new和make

 該如何選擇 118

15.1 變量 118

15.1.1 變量的聲明 119

15.1.2 變量的賦值 119

15.2 new函數 120

15.3 變量初始化 121

15.3.1 指針變量初始化 122

15.3.2 make 函數 123

15.4 小結 124

第16章 

運行時反射:字符串和

 結構體之間如何轉換 125

16.1 什么是反射 125

16.2 獲取對象的值和類型 126

16.3 reflect.Value 126

16.3.1 結構體定義 126

16.3.2 獲取原始類型 128

16.3.3 修改對應的值 128

16.3.4 獲取對應的底層類型 129

16.4 reflect.Type 130

16.4.1 接口定義 130

16.4.2 遍歷結構體的字段和方法 131

16.4.3 是否實現某接口 132

16.5 字符串和結構體的互轉 133

16.5.1 JSON和struct互轉 133

16.5.2 struct tag功能 134

16.5.3 struct轉JSON的示例 135

16.6 反射定律 136

16.7 小結 137

第17章 

非類型安全:不安全但

 高效的unsafe 138

17.1 指針類型轉換 139

17.2 unsafe.Pointer 139

17.3 uintptr 指針類型 140

17.4 指針轉換規則 142

17.5 unsafe.Sizeof 142

17.6 小結 143

第18章 

零拷貝:slice為何如此

 高效 144

18.1 數組 144

18.2 slice 145

18.2.1 動態擴容 145

18.2.2 數據結構 146

18.2.3 高效的原因 148

18.2.4 string 和 []byte 互轉 149

18.3 小結 151

第19章 

實戰:字符串如何高效

 拼接 152

19.1 一個例子 152

19.2 幾種拼接方式 153

19.2.1 “+”拼接 153

19.2.2 fmt 拼接 153

19.2.3 join 拼接 154

19.2.4 buffer 拼接 154

19.2.5 builder拼接 155

19.3 性能對比 155

19.4 拼接函數改造 156

19.5 再次進行性能測試 157

19.5.1 10個字符串 157

19.5.2 100個字符串 160

19.5.3 1000個字符串 161

19.6 builder拼接慢在哪里 161

19.7 內存分配優化 162

19.8 小結 163

第四部分 Go語言工程管理

第20章 測試:質量保證的基石 166

20.1 單元測試 166

20.1.1 什么是單元測試 166

20.1.2 Go 語言的單元測試 167

20.1.3 單元測試覆蓋率 169

20.2 基準測試 170

20.2.1 什么是基準測試 170

20.2.2 Go 語言的基準測試 170

20.2.3 計時方法 171

20.2.4 內存統計 172

20.2.5 并發基準測試 172

20.2.6 基準測試實戰 173

20.3 小結 174

第21章 

性能優化:如何寫出

 高質量的代碼 175

21.1 代碼規范檢查 175

21.1.1 什么是代碼規范檢查 175

21.1.2 golangci-lint的安裝和使用 176

21.1.3 golangci-lint的配置 177

21.1.4 集成 golangci-lint 到 CI 179

21.2 性能優化 179

21.2.1 堆或棧分配 179

21.2.2 逃逸分析 180

21.2.3 優化技巧 182

21.3 小結 183

第22章 協作開發:模塊化管理 184

22.1 Go語言中的包 184

22.1.1 什么是包 184

22.1.2 使用包 185

22.1.3 作用域 185

22.1.4 自定義包 185

22.1.5 init 函數 186

22.2 Go 語言中的模塊 186

22.2.1 go mod 186

22.2.2 使用第三方模塊 187

22.3 小結 188

第五部分 Go語言泛型

第23章 

初識泛型:使用泛型簡化

 編程 192

23.1 一個非泛型示例 192

23.2 使用泛型重構示例 193

23.3 類型推導 194

23.4 自定義類型約束 194

23.5 內置的類型約束 195

23.5.1 Signed 196

23.5.2 Unsigned 196

23.5.3 Integer 196

23.5.4 Float 196

23.5.5 Ordered 196

23.6 函數式編程 197

23.6.1 map 197

23.6.2 reduce 199

23.6.3 filter 200

23.7 小結 201

第24章 

深入泛型:漫談泛型

 設計 202

24.1 為什么需要泛型 202

24.2 類型參數 203

24.3 泛型類型 204

24.4 類型約束 205

24.4.1 any約束 206

24.4.2 類型集 206

24.5 再論類型推導 209

24.5.1 參數類型推導 209

24.5.2 約束類型推導 210

24.6 小結 211

結束語 你的Go語言成長之路 212


展開全部

打開Go語言之門 入門、實戰與進階 作者簡介

飛雪無情 Go 語言早期的布道者、“Go語言實戰筆記”作者,通過“飛雪無情”公眾號與數萬名讀者交流 Go 語言技術,擅長用通俗的語言將底層機制講得淺顯易懂。深耕技術領域近十年,前隨手記技術VP、Go Meetup講師、TGO鯤鵬會成員,目前在一家互聯網公司擔任副總裁,負責產品的研發管理和架構設計。

商品評論(0條)
暫無評論……
書友推薦
本類暢銷
編輯推薦
返回頂部
中圖網
在線客服
主站蜘蛛池模板: 防水套管厂家_刚性防水套管_柔性防水套管_不锈钢防水套管-郑州中泰管道 | 喷漆房_废气处理设备-湖北天地鑫环保设备有限公司 | 螺杆式冷水机-低温冷水机厂家-冷冻机-风冷式-水冷式冷水机-上海祝松机械有限公司 | 游动电流仪-流通式浊度分析仪-杰普仪器(上海)有限公司 | 样品瓶(色谱样品瓶)百科-浙江哈迈科技有限公司 | 尾轮组_头轮组_矿用刮板_厢式刮板机_铸石刮板机厂家-双驰机械 | 螺旋绞龙叶片,螺旋输送机厂家,山东螺旋输送机-淄博长江机械制造有限公司 | 石家庄救护车出租_重症转院_跨省跨境医疗转送_活动赛事医疗保障_康复出院_放弃治疗_腾康26年医疗护送转诊团队 | 东莞喷砂机-喷砂机-喷砂机配件-喷砂器材-喷砂加工-东莞市协帆喷砂机械设备有限公司 | 消防泵-XBD单级卧式/立式消防泵-上海塑泉泵阀(集团)有限公司 | 智能门锁电机_智能门锁离合器_智能门锁电机厂家-温州劲力智能科技有限公司 | 滁州高低温冲击试验箱厂家_安徽高低温试验箱价格|安徽希尔伯特 | 闪电优家-卫生间防水补漏_酒店漏水渗水维修_防水堵漏公司 | 咖啡加盟-咖啡店加盟-咖啡西餐厅加盟-塞纳左岸咖啡西餐厅官网 | SDG吸附剂,SDG酸气吸附剂,干式酸性气体吸收剂生产厂家,超过20年生产使用经验。 - 富莱尔环保设备公司(原名天津市武清县环保设备厂) | 升降机-高空作业车租赁-蜘蛛车-曲臂式伸缩臂剪叉式液压升降平台-脚手架-【普雷斯特公司厂家】 | 济南ISO9000认证咨询代理公司,ISO9001认证,CMA实验室认证,ISO/TS16949认证,服务体系认证,资产管理体系认证,SC食品生产许可证- 济南创远企业管理咨询有限公司 郑州电线电缆厂家-防火|低压|低烟无卤电缆-河南明星电缆 | 14米地磅厂家价价格,150吨地磅厂家价格-百科 | 镀锌方管,无缝方管,伸缩套管,方矩管_山东重鑫致胜金属制品有限公司 | 拉力机-拉力试验机-万能试验机-电子拉力机-拉伸试验机-剥离强度试验机-苏州皖仪实验仪器有限公司 | 苏州工作服定做-工作服定制-工作服厂家网站-尺品服饰科技(苏州)有限公司 | 大倾角皮带机-皮带输送机-螺旋输送机-矿用皮带输送机价格厂家-河南坤威机械 | 诚暄电子公司首页-线路板打样,pcb线路板打样加工制作厂家 | 广东护栏厂家-广州护栏网厂家-广东省安麦斯交通设施有限公司 | 欧美日韩国产一区二区三区不_久久久久国产精品无码不卡_亚洲欧洲美洲无码精品AV_精品一区美女视频_日韩黄色性爱一级视频_日本五十路人妻斩_国产99视频免费精品是看4_亚洲中文字幕无码一二三四区_国产小萍萍挤奶喷奶水_亚洲另类精品无码在线一区 | 压片机_高速_单冲_双层_花篮式_多功能旋转压片机-上海天九压片机厂家 | 上海刑事律师|刑事辩护律师|专业刑事犯罪辩护律师免费咨询-[尤辰荣]金牌上海刑事律师团队 | 钛合金标准件-钛合金螺丝-钛管件-钛合金棒-钛合金板-钛合金锻件-宝鸡远航钛业有限公司 | 浙江华锤电器有限公司_地磅称重设备_防作弊地磅_浙江地磅售后维修_无人值守扫码过磅系统_浙江源头地磅厂家_浙江工厂直营地磅 | 热回收盐水机组-反应釜冷水机组-高低温冷水机组-北京蓝海神骏科技有限公司 | 聚氨酯催化剂K15,延迟催化剂SA-1,叔胺延迟催化剂,DBU,二甲基哌嗪,催化剂TMR-2,-聚氨酯催化剂生产厂家 | 柴油发电机组_柴油发电机_发电机组价格-江苏凯晨电力设备有限公司 | 接地电阻测试仪[厂家直销]_电缆故障测试仪[精准定位]_耐压测试仪-武汉南电至诚电力设备 | 海南在线 海南一家| 电动打包机_气动打包机_钢带捆扎机_废纸打包机_手动捆扎机 | 超声波清洗机-超声波清洗设备定制生产厂家 - 深圳市冠博科技实业有限公司 | 二手Sciex液质联用仪-岛津气质联用仪-二手安捷伦气质联用仪-上海隐智科学仪器有限公司 | 密集架|电动密集架|移动密集架|黑龙江档案密集架-大量现货厂家销售 | crm客户关系管理系统,销售管理系统,crm系统,在线crm,移动crm系统 - 爱客crm | 穿线管|波纹穿线管|包塑金属软管|蛇皮管?闵彬专注弱电工程? | PC阳光板-PC耐力板-阳光板雨棚-耐力板雨棚,厂家定制[优尼科板材] |