注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)打開Go語(yǔ)言之門:入門、實(shí)戰(zhàn)與進(jìn)階

打開Go語(yǔ)言之門:入門、實(shí)戰(zhàn)與進(jìn)階

打開Go語(yǔ)言之門:入門、實(shí)戰(zhàn)與進(jìn)階

定 價(jià):¥89.00

作 者: 飛雪無(wú)情 著
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787111712459 出版時(shí)間: 2022-11-01 包裝: 平裝-膠訂
開本: 16開 頁(yè)數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

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

作者簡(jiǎn)介

  飛雪無(wú)情 Go語(yǔ)言早期的布道者、“Go語(yǔ)言實(shí)戰(zhàn)筆 記”作者,通過(guò)“飛雪無(wú)情”公眾號(hào)與數(shù)萬(wàn)名讀者交流Go語(yǔ)言技術(shù),擅長(zhǎng)用通俗的語(yǔ)言將底層機(jī)制講得淺顯易懂。 深耕技術(shù)領(lǐng)域近十年,前隨手記技術(shù)VP、 Go Meetup講師、TGO鯤鵬會(huì)成員,目前在一家互聯(lián)網(wǎng)公司擔(dān)任副總裁,負(fù)責(zé)產(chǎn)品的研發(fā)管理和架構(gòu)設(shè)計(jì)。

圖書目錄

前言 學(xué)習(xí)Go語(yǔ)言,抓住未來(lái)的機(jī)遇
●部分 快速入門Go語(yǔ)言
第1章 基礎(chǔ)入門:Hello, Go語(yǔ)言 2
1.1 Hello,World 2
1.2 程序結(jié)構(gòu)分析 3
1.3 搭建Go語(yǔ)言開發(fā)環(huán)境 4
1.3.1 在Windows下安裝 4
1.3.2 在Linux下安裝 4
1.3.3 在macOS下安裝 4
1.3.4 安裝測(cè)試 4
1.3.5 環(huán)境變量設(shè)置 5
1.4 項(xiàng)目結(jié)構(gòu) 5
1.5 編譯發(fā)布 6
1.6 跨平臺(tái)編譯 6
1.7 Go編輯器推薦 7
1.8 小結(jié) 8
第2章 數(shù)據(jù)類型:Go語(yǔ)言的基石 9
2.1 一個(gè)簡(jiǎn)單示例 9
2.2 基礎(chǔ)類型 11
2.2.1 整型 11
2.2.2 浮點(diǎn)型 11
2.2.3 布爾型 12
2.2.4 字符串 12
2.2.5 零值 12
2.3 變量 13
2.3.1 變量簡(jiǎn)短聲明 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 字符串和數(shù)字互轉(zhuǎn) 15
2.5.2 strings包 16
2.6 小結(jié) 16
第3章 
控制結(jié)構(gòu):if、for、switch那些事兒 17
3.1 if條件語(yǔ)句 17
3.2 switch選擇語(yǔ)句 19
3.3 for循環(huán)語(yǔ)句 20
3.4 小結(jié) 22
第4章 
集合類型:如何正確使用array、slice和map 23
4.1 數(shù)組 24
4.1.1 數(shù)組聲明 24
4.1.2 數(shù)組循環(huán) 25
4.2 切片 25
4.2.1 基于數(shù)組生成切片 26
4.2.2 切片的修改 26
4.2.3 切片的聲明 27
4.2.4 append函數(shù) 27
4.2.5 切片元素循環(huán) 28
4.3 映射 28
4.3.1 創(chuàng)建和初始化map 28
4.3.2 獲取和刪除map 29
4.3.3 遍歷map 29
4.3.4 獲取map的大小 30
4.4 string和[]byte 30
4.5 小結(jié) 31
第5章 
函數(shù)和方法:如何區(qū)分函數(shù)和方法 32
5.1 函數(shù) 33
5.1.1 函數(shù)初探 33
5.1.2 函數(shù)聲明 33
5.1.3 多值返回 34
5.1.4 返回值命名 35
5.1.5 可變參數(shù) 36
5.1.6 包級(jí)函數(shù) 37
5.1.7 匿名函數(shù)和閉包 37
5.2 方法 39
5.2.1 不同于函數(shù)的方法 39
5.2.2 值和指針類型接收者 39
5.3 小結(jié) 40
第6章 
struct和interface:隱式的接口實(shí)現(xiàn) 42
6.1 結(jié)構(gòu)體 43
6.1.1 結(jié)構(gòu)體的定義 43
6.1.2 聲明和使用 44
6.1.3 結(jié)構(gòu)體的字段 44
6.2 接口 45
6.2.1 接口的定義 45
6.2.2 接口的實(shí)現(xiàn) 46
6.2.3 值和指針類型接收者 47
6.3 工廠函數(shù) 48
6.4 繼承和組合 49
6.5 類型斷言 50
6.6 小結(jié) 52
第7章 
錯(cuò)誤處理:如何更優(yōu)雅地處理程序異常和錯(cuò)誤 53
7.1 錯(cuò)誤 54
7.1.1 error接口 54
7.1.2 error工廠函數(shù) 55
7.1.3 自定義error 55
7.1.4 error斷言 56
7.2 錯(cuò)誤嵌套 56
7.2.1 Error Wrapping功能 56
7.2.2 errors.Unwrap函數(shù) 57
7.2.3 errors.Is函數(shù) 57
7.2.4 errors.As函數(shù) 58
7.3 defer函數(shù) 58
7.4 panic函數(shù) 59
7.5 recover函數(shù) 60
7.6 小結(jié) 60
●第二部分 Go語(yǔ)言的高效并發(fā)
第8章 
goroutine和channel:并發(fā)的基礎(chǔ) 62
8.1 什么是并發(fā) 63
8.2 進(jìn)程和線程 63
8.2.1 進(jìn)程 63
8.2.2 線程 64
8.3 協(xié)程 64
8.4 管道 65
8.4.1 聲明一個(gè)管道 65
8.4.2 無(wú)緩沖管道 66
8.4.3 有緩沖管道 66
8.4.4 關(guān)閉管道 67
8.4.5 單向管道 67
8.5 select channel示例 68
8.6 小結(jié) 69
第9章 
同步原語(yǔ):讓你對(duì)并發(fā)控制得心應(yīng)手 70
9.1 資源競(jìng)爭(zhēng) 70
9.2 同步原語(yǔ) 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 小結(jié) 77
第10章 
Context:多協(xié)程并發(fā)控制神器 79
10.1 協(xié)程如何退出 79
10.2 Context的使用示例 81
10.3 Context詳解 82
10.4 Context樹 83
10.5 使用Context取消多個(gè)協(xié)程 84
10.6 Context傳值 85
10.7 Context使用原則 85
10.8 小結(jié) 86
第11章 
并發(fā)模式:拿來(lái)即用的經(jīng)驗(yàn)總結(jié) 87
11.1 for select循環(huán)模式 87
11.2 select timeout模式 88
11.3 流水線模式 89
11.4 扇出和扇入模式 92
11.5 Future模式 94
11.6 小結(jié) 96
第12章 
并發(fā)技巧:高效并發(fā)安全的字節(jié)池 97
12.1 字節(jié)切片 97
12.2 高效字節(jié)池 98
12.3 使用BytePoolCap 99
12.4 
BytePoolCap與sync.Pool的
 對(duì)比 99
12.5 小結(jié) 101
●第三部分 深入理解Go語(yǔ)言
第13章 
指針詳解:什么情況下應(yīng)該使用指針 104
13.1 什么是指針 104
13.2 指針的聲明和定義 105
13.3 指針的操作 107
13.4 指針參數(shù) 107
13.5 指針接收者 108
13.6 什么情況下使用指針 108
13.7 小結(jié) 109
第14章 
參數(shù)傳遞:值、引用以及指針的區(qū)別 110
14.1 修改參數(shù) 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 小結(jié) 117
第15章 
內(nèi)存分配:new和make該如何選擇 118
15.1 變量 118
15.1.1 變量的聲明 119
15.1.2 變量的賦值 119
15.2 new函數(shù) 120
15.3 變量初始化 121
15.3.1 指針變量初始化 122
15.

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)