Go並發編程實戰
汪明
買這商品的人也買了...
-
$474企業應用架構模式 (Patterns of Enterprise Application Architecture) -
初探機器學習|使用 Python (Thoughtful Machine Learning with Python)$480$379 -
Go Web 編程 (Go Web Programming)$474$450 -
優雅的 SciPy|Python 科學研究的美學 (Elegant SciPy: The Art of Scientific Python)$580$458 -
Python 資料分析, 2/e (Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython, 2/e)$880$695 -
$454Hyperledger Fabric 源代碼分析與深入解讀 -
Docker 專業養成 ─ 活用基礎與實踐技能 (暢銷回饋版)$450$351 -
全球第一個成熟商用區塊鏈框架:HyperLedgerFabric 實戰 (熱銷版)$580$493 -
$454Flutter 技術入門與實戰, 2/e -
$474區塊鏈智能合約與 DApp 應用實戰 -
$507一本書讀懂區塊鏈, 2/e -
$454Go語言高併發與微服務實戰 -
$551Go 語言編程之旅:一起用 Go 做項目 -
再強一點:用 Go語言完成六個大型專案(書況不佳限門市銷售))$780$399 -
$963分佈式人工智能:基於 TensorFlow、RTOS 與群體智能體系 -
$505自然語言處理實戰 : 利用 Python 理解、分析和生成文本 -
TensorFlow 2.x 人工智慧、機器學習超炫範例 200+ (附影音教學影片、範例程式)$560$442 -
$505WebRTC 音視頻開發:React + Flutter + Go 實戰 -
AI 醫療 DEEP MEDICINE (Deep Medicine: How Artificial Intelligence Can Make Healthcare Human Again)$680$578 -
2021 從大數據到人工智慧:理論及 Spark 實作 (熱銷版)$580$493 -
趨勢未來 機器學習技術實戰:醫療大數據深度應用$560$476 -
$403基於 Google 雲平臺的機器學習和深度學習入門 -
Java 程式設計師應該知道的 97件事|來自專家的集體智慧 (97 Things Every Java Programmer Should Know)$450$356 -
$454Go 微服務實戰 -
別再 mnist 了:跨平台高平行 TensorFlow 2 精彩上陣$1,000$790
中文年末書展|繁簡參展書2書75折 詳見活動內容 »
-
75折
為你寫的 Vue Components:從原子到系統,一步步用設計思維打造面面俱到的元件實戰力 (iThome 鐵人賽系列書)$780$585 -
75折
BDD in Action, 2/e (中文版)$960$720 -
75折
看不見的戰場:社群、AI 與企業資安危機$750$563 -
79折
AI 精準提問 × 高效應用:DeepSeek、ChatGPT、Claude、Gemini、Copilot 一本搞定$390$308 -
7折
超實用!Word.Excel.PowerPoint 辦公室 Office 365 省時高手必備 50招, 4/e (暢銷回饋版)$420$294 -
75折
裂縫碎光:資安數位生存戰$550$412 -
日本當代最強插畫 2025 : 150位當代最強畫師豪華作品集$640$576 -
79折
Google BI 解決方案:Looker Studio × AI 數據驅動行銷實作,完美整合 Google Analytics 4、Google Ads、ChatGPT、Gemini$630$498 -
79折
超有料 Plus!職場第一實用的 AI 工作術 - 用對 AI 工具、自動化 Agent, 讓生產力全面進化!$599$473 -
75折
從零開始學 Visual C# 2022 程式設計, 4/e (暢銷回饋版)$690$518 -
75折
Windows 11 制霸攻略:圖解 AI 與 Copilot 應用,輕鬆搞懂新手必學的 Windows 技巧$640$480 -
75折
精準駕馭 Word!論文寫作絕非難事 (好評回饋版)$480$360 -
Sam Yang 的插畫藝術:用 Procreate / PS 畫出最強男友視角 x 女孩美好日常$699$629 -
79折
AI 加持!Google Sheets 超級工作流$599$473 -
78折
想要 SSR? 快使用 Nuxt 吧!:Nuxt 讓 Vue.js 更好處理 SEO 搜尋引擎最佳化(iThome鐵人賽系列書)$780$608 -
78折
超實用!業務.總管.人資的辦公室 WORD 365 省時高手必備 50招 (第二版)$500$390 -
7折
Node-RED + YOLO + ESP32-CAM:AIoT 智慧物聯網與邊緣 AI 專題實戰$680$476 -
79折
「生成式⇄AI」:52 個零程式互動體驗,打造新世代人工智慧素養$599$473 -
7折
Windows APT Warfare:惡意程式前線戰術指南, 3/e$720$504 -
75折
我輩程式人:回顧從 Ada 到 AI 這條程式路,程式人如何改變世界的歷史與未來展望 (We, Programmers: A Chronicle of Coders from Ada to AI)$850$637 -
75折
不用自己寫!用 GitHub Copilot 搞定 LLM 應用開發$600$450 -
79折
Tensorflow 接班王者:Google JAX 深度學習又快又強大 (好評回饋版)$780$616 -
79折
GPT4 會你也會 - 共融機器人的多模態互動式情感分析 (好評回饋版)$700$553 -
79折
技術士技能檢定 電腦軟體應用丙級術科解題教本|Office 2021$460$363 -
75折
Notion 與 Notion AI 全能實戰手冊:生活、學習與職場的智慧策略 (暢銷回饋版)$560$420
相關主題
商品描述
Go語言在多核硬件架構、超大規模分佈式計算集群和Web應用上具有明顯的優勢,目前Google、Facebook、AWS、Mozilla、七牛、阿裡、騰訊、百度、京東等大公司都已經開始使用Go語言開發其雲計算產品。 本書分為12章,第1章介紹Go語言的基本開發環境;第2章介紹Go語言的語法基礎;第3章介紹Go語言的函數;第4章介紹Go語言的流程控制與錯誤處理;第5章介紹Go語言中的結構體、數組、切片和字典等;第6章介紹Go語言中的指針;第7章介紹Go語言的面向對象用法;第8章介紹Go語言文件讀寫;第9章介紹Go語言的並發編程;第10章介紹Go語言的反射特性;第11章介紹Go語言如何構建Web服務;第12章用Go語言實現了一個並發聊天實戰項目。本書配套源碼、課件、開發環境和教學視頻。 本書內容詳盡、示例豐富,是一本Go語言的入門教材,非常適合有一定編程基礎的讀者學習使用。當然,本書也適合對編程感興趣的讀者學習。同時,本書也非常適合高等院校的師生學習閱讀,可作為高等院校電腦及相關專業的教材。
作者簡介
汪明,碩士,徐州軟件協會副理事長,某創業公司合夥人。從事軟件行業十餘年,發表論文數十篇,擅長JavaScript、C、Java、等傳統語言,也擅長TypeScript、Go等新語言。著有圖書《TypeScript實戰》。
目錄大綱
目 錄
第1章 搭建Go開發環境 1
1.1 Go的語言特性 1
1.2 安裝 4
1.2.1 Windows下安裝Go 5
1.2.2 Linux下安裝Go 7
1.3 配置環境變量 7
1.3.1 Windows下的環境變量配置 7
1.3.2 Linux下的環境變量配置 8
1.4 第一個Go程序 9
1.4.1 搭建本書項目代碼結構 9
1.4.2 創建並運行第一個Go程序 10
1.4.3 Go程序的編譯 11
1.4.4 Go的幫助系統 12
1.5 運行時 15
1.6 編譯器 16
1.6.1 詞法分析和語法分析 17
1.6.2 類型檢查 17
1.6.3 生成SSA中間代碼 17
1.6.4 生成機器代碼 18
1.7 Go程序的集成開發環境 18
1.8 演練:Exit自動退出程序 23
1.9 本章小結 25
第2章 Go程序的基礎要素 26
2.1 命名規範 26
2.2 包 27
2.2.1 包的導入 29
2.2.2 包的嵌套 32
2.2.3 特殊的init函數 33
2.3 數據類型 35
2.3.1 字符串類型 36
2.3.2 數值類型 38
2.3.3 布爾類型 39
2.3.4 派生類型 40
2.4 常量 40
2.5 變量 42
2.6 運算符 44
2.6.1 算術運算符 44
2.6.2 關系運算符 45
2.6.3 邏輯運算符 46
2.6.4 位運算符 47
2.6.5 賦值運算符 48
2.6.6 特殊運算符 49
2.6.7 運算符的優先級 50
2.7 註釋 50
2.8 類型轉換 51
2.9 演練:原子計算器 54
2.10 小結 55
第3章 函數 56
3.1 函數的結構 57
3.1.1 Go語言函數的基本結構 57
3.1.2 函數中的變量存儲(堆棧) 58
3.1.3 函數返回函數 60
3.2 函數返回多個值的特性 61
3.3 作用域 62
3.4 匿名函數 63
3.4.1 匿名函數的即時調用 63
3.4.2 匿名函數的重復調用 64
3.5 變長函數 65
3.6 遞歸函數 66
3.6.1 使用遞歸函數求解斐波那契數列 66
3.6.2 使用循環代替遞歸的方法 67
3.7 回調函數 68
3.8 閉包 70
3.9 defer關鍵字 71
3.10 演練:原子計算器2.0疊代版 72
3.11 小結 74
第4章 流程控制與錯誤處理 75
4.1 if判斷 75
4.1.1 if語句的基本語法 75
4.1.2 if語句中的變量作用域 77
4.2 switch條件判斷語句 78
4.2.1 switch語句中的基本語法 78
4.2.2 fallthrough穿透 80
4.2.3 case多個表達式 81
4.2.4 switch省略判斷條件 82
4.3 for循環語句 83
4.4 break與continue 85
4.5 Go的錯誤處理機制 86
4.5.1 error 86
4.5.2 panic 87
4.6 演練:哲學的三段論 88
4.7 小結 93
第5章 復合數據類型 94
5.1 type關鍵字 94
5.2 struct類型 97
5.2.1 聲明struct 98
5.2.2 struct作為函數的參數 100
5.2.3 給struct定義方法 102
5.2.4 struct嵌套 102
5.3 匿名struct類型 103
5.4 數組 106
5.4.1 創建數組 106
5.4.2 數組作為函數的參數 108
5.4.3 二維數組 110
5.4.4 數組元素是struct 111
5.5 切片 112
5.5.1 切片的內部實現 113
5.5.2 切片的切割 115
5.5.3 切片的擴容 118
5.5.4 切片作為函數的參數 120
5.6 字典 122
5.6.1 創建字典 122
5.6.2 字典作為函數的參數 123
5.7 range關鍵字 124
5.8 演練:內存數據庫 126
5.9 小結 135
第6章 指針 136
6.1 內存地址 136
6.2 指針的應用 141
6.2.1 什麼是指針 141
6.2.2 聲明指針 142
6.2.3 關鍵字new 142
6.2.4 獲取元素地址 143
6.2.5 unsafe包 145
6.2.6 指針的指針 147
6.3 野指針 148
6.4 值傳參與地址傳參 149
6.5 演練:Go單向鏈表的實現 151
6.6 小結 157
第7章 面向對象和接口 158
7.1 結構體實現封裝 158
7.2 組合實現繼承 161
7.3 接口實現 163
7.4 類型判斷與斷言 166
7.5 接口實現多態 169
7.6 演練:SQL生成器的實現 171
7.7 小結 179
第8章 文件讀寫 180
8.1 文件讀取 180
8.1.1 整塊讀取 180
8.1.2 分字節讀取 183
8.1.3 分行讀取 185
8.2 文件寫入 187
8.2.1 整塊寫入 187
8.2.2 分字節寫入 189
8.2.3 分行寫入 191
8.3 自己開發io包下的讀寫接口 192
8.4 目錄操作 195
8.4.1 目錄的基本操作 195
8.4.2 目錄的遍歷 197
8.5 演練:property配置文件的操作 198
8.6 小結 200
第9章 圖解並發編程 201
9.1 單核並發 202
9.2 鎖機制 207
9.3 並行——多核並行 211
9.4 Go調度器 216
9.5 協程 218
9.6 協程間通信 223
9.6.1 共享變量 223
9.6.2 通道 224
9.7 無緩沖通道 225
9.8 有緩沖通道 232
9.9 通道和緩沖生成I/O流 235
9.10 協程調試 236
9.10.1 死鎖 236
9.10.2 數據競爭 237
9.10.3 協程泄漏 240
9.11 協程性能測試 244
9.11.1 Go語言自帶的測試工具 244
9.11.2 性能測試工具pprof 246
9.11.3 追蹤分析工具go tool trace 249
9.12 演練:單機MapReduce單詞統計 252
9.13 小結 258
第10章 反射 259
10.1 反射的概念和基本用法 259
10.2 獲取結構體字段和方法 265
10.3 反射動態修改值 268
10.4 獲取結構體字段標識 270
10.5 判斷是否實現接口 272
10.6 動態調用方法 274
10.7 演練:ORM基本實現 276
10.8 小結 282
第11章 Go的Web服務 283
11.1 HTTP/HTTPS 283
11.1.1 HTTP協議原理 284
11.1.2 HTTPS協議原理 285
11.1.3 Go語言的net/http包 286
11.1.4 使用Go語言構建HTTP Web服務程序 287
11.2 WebSocket 294
11.2.1 WebSocket協議原理 294
11.2.2 使用Go語言實現WebSocket服務端 296
11.2.3 使用Go語言實現WebSocket客戶端 298
11.3 SSE 299
11.3.1 SSE技術原理 299
11.3.2 使用Go語言實現SSE通信 300
11.4 演練:構建自己的Web服務器 305
11.5 小結 313
第12章 實戰:並發聊天 314
12.1 需求描述 314
12.2 需求分析 315
12.3 技術選型 316
12.4 架構 317
12.5 代碼分析 319
12.6 小結 334



