-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Go語言編程入門與實戰技巧

( 簡體 字)
作者:黃靖鈞類別:1. -> 程式設計 -> Go語言
譯者:
出版社:電子工業出版社Go語言編程入門與實戰技巧 3dWoo書號: 49814
詢問書籍請說出此書號!

缺書
NT售價: 395

出版日:9/1/2018
頁數:420
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787121349669
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

當你打開這本書時,想必對Go語言是有一定興趣的,本書希望能夠讓你真正喜歡上Go語言。本書面向的讀者是對Go語言有一定了解但尚未入門的新手。
Go語言是谷歌公司發布的一款開源編程語言,它對多處理器系統應用程序的編程進行了大量優化。作為新時代的代表性新生編程語言,Go語言素有云計算時代的C語言之稱。從2009年正式發布至今,Go語言經過頻繁的迭代更新走到今天,兩次斬獲TIOBE編程語言排行榜的年度語言稱號(2009年和2016年),已經躋身主流編程語言之列。
時至今日,Go語言編譯程序的速度可以媲美C或C++程序,而且更加安全,支持并行進程。整個Go語言社區在諸多前輩們的推廣與布道下,不斷壯大,形成了今天富有活力的生態環境。
Go語言在最近幾年的更新中有很多富有里程碑意義的更新,例如實現了自舉,Go語言幾乎完全使用Go語言重寫了,僅保留一些基礎的匯編代碼。實現自舉的好處有很多,一是提高了執行速度,可以避免跨語言調用或虛擬機等情況;二是提高了安全性,縮小了程序攻擊面,使得整個項目更加可控;三是能夠更輕易地實現跨平臺編譯,編寫跨平臺程序變得輕而易舉。
除此之外,Go語言的運行時系統和標準庫等大量生產工具都得到了極大的提升,每一次版本迭代,Go語言都會通過社區反饋權衡內存管理機制,并對調度器做出一些調整。在即將開始的Go語言學習過程中,相信你也能夠深刻感受到Go語言開發團隊的深思熟慮。
Go語言還有一堆令人“愛不釋手”的工具,令人驚艷的go tool宛如一把“瑞士軍刀”,只需安裝Go語言環境之后就可以直接使用。
重要的是,Go語言社區生態成績同樣斐然,隨著社區擴大,Go語言包管理機制也有了很大改進,vendor目錄的啟用標志著Go語言開發進入了一個更加規范的階段。
整個社區里,拿得出手的殺手級應用(如Moby、Kubernetes、Gogs、Grafana、Etcd等)噴涌而出。Go語言累計接受了將近4萬次的代碼提交,近千名開發者參與到Go語言開發中。
本書的內容分為三大部分,第一部分主要介紹了Go語言的基礎知識,包括Go語言的一些特性、適合的場景,以及Go語言的程序結構和數據類型,還講解了函數和一些關鍵字的用法與數據類型的調用原理;第二部分介紹了Go語言常見的數據結構和常用的標準庫,結合實際應用場景探討了大部分生產環境會遇到的問題與解決辦法;第三部分主要介紹了Go語言的測試與內存管理機制,深入理解Go語言的設計哲學,了解Go語言底層的內存管理和并發機制,為更進一步的學習打下堅實的基礎。
本書的目標讀者是對計算機編程尤其是對Go語言編程感興趣的新手。由于作者水平和時間有限,書中難免會有一些錯誤和紕漏,歡迎讀者指正。衷心希望通過本書的學習,能夠讓你對Go語言有一個比較全面的理解。
內容簡介:

《Go語言編程入門與實戰技巧》從內容上分為三大部分,第一部分主要介紹Go語言的基礎知識,包括Go語言的安裝和開發工具,介紹了Go語言的特性與適合的場景,然后講解了Go語言的程序結構和數據類型,并針對函數和一些關鍵字的用法與數據類型的調用原理做了闡述。第二部分介紹了Go語言數據結構和標準庫,結合實際應用場景探討了日常生產環境會遇到的問題與解決辦法。第三部分主要介紹Go語言的測試工具和用法,并重點講解了Go語言的內存管理機制,深入理解Go語言的設計哲學,了解Go語言底層的內存管理和并發機制,為更進一步的學習打下堅實的基礎。本書適合對計算機編程尤其是對Go語言編程感興趣的新手作為入門教程閱讀,還適合想在Web開發領域有所發展的程序員學習。

目錄:

第1章 認識Go語言 1
1.1 Go語言簡介 1
1.1.1 Go語言簡史 1
1.1.2 Go語言特性 2
1.1.3 誰適合使用Go語言 2
1.2 Go語言的開發環境部署 3
1.2.1 Go語言環境變量 3
1.2.2 在Linux上安裝Go語言環境 3
1.2.3 在Mac OS上安裝Go語言環境 5
1.2.4 在Windows上安裝Go語言環境 5
1.3 Go語言的基本命令及使用 5
1.3.1 GOROOT結構 6
1.3.2 GOPATH結構 7
1.3.3 Go語言命令行參數 8
1.3.4 第一個Go語言程序 12
1.4 Go語言的開發工具 14
1.4.1 Code/Atom 14
1.4.2 VIM-Go 17
1.4.3 Gogland 18
1.4.4 LiteIDE 18
1.4.5 Cloud IDE 19
1.5 本章小結 23

第2章 程序結構 24
2.1 Go語言程序元素 24
2.1.1 標識符 24
2.1.2 關鍵字 25
2.1.3 字面量 25
2.1.4 分隔符 25
2.1.5 運算符 26
2.1.6 注釋 27
2.2 Go語言基本概念 28
2.2.1 常量 28
2.2.2 變量 32
2.3 本章小結 37

第3章 基礎數據類型 38
3.1 整型 39
3.1.1 整型的表示 39
3.1.2 整型的運算 39
3.2 浮點型 41
3.2.1 浮點型的表示 41
3.2.2 浮點型的運算 42
3.2.3 復數 42
3.3 字符與字符串 44
3.3.1 字符串的表示 44
3.3.2 操作字符串 46
3.3.3 字符串格式化 60
3.4 布爾型 61
3.4.1 布爾型的表示 61
3.4.2 布爾型的運算 62
3.5 基本數據類型的擴展 63
3.5.1 強制類型轉換 63
3.5.2 自定義類型 64
3.5.3 類型別名 64
3.5.4 指針 65
3.6 本章小結 69

第4章 流程控制 70
4.1 條件語句 70
4.1.1 if判斷 71
4.1.2 if-else判斷 71
4.1.3 else-if判斷 73
4.1.4 初始化子語句 74
4.2 選擇語句 75
4.2.1 switch語句 75
4.2.2 switch初始化語句 78
4.2.3 select語句 79
4.3 循環語句 80
4.3.1 for的子語句 81
4.3.2 range子語句 82
4.4 延遲語句 84
4.5 標簽 87
4.5.1 break 87
4.5.2 continue 89
4.5.3 goto 90
4.6 本章小結 91

第5章 函數 92
5.1 認識函數 92
5.1.1 函數的聲明 92
5.1.2 函數的參數 93
5.1.3 函數的返回值 94
5.2 函數的基礎 95
5.2.1 多返回值 96
5.2.2 函數作為參數 97
5.2.3 函數作為類型 98
5.2.4 可變參數 99
5.2.5 匿名函數與閉包 102
5.2.6 遞歸函數 106
5.2.7 內置函數 108
5.3 函數進階 108
5.3.1 參數傳遞機制 108
5.3.2 defer與跟蹤 111
5.3.3 錯誤與恢復 116
5.4 本章小結 122

第6章 復合數據類型 123
6.1 數組 123
6.1.1 聲明數組 123
6.1.2 訪問與修改 124
6.1.3 多維數組 126
6.1.4 將數組傳遞給函數 127
6.2 切片 128
6.2.1 創建數組切片 129
6.2.2 切片的使用 131
6.2.3 多維切片 137
6.2.4 將切片傳遞給函數 137
6.3 映射 138
6.3.1 映射的實現 138
6.3.2 映射的創建 139
6.3.3 映射的使用 139
6.3.4 將映射傳遞給函數 141
6.4 本章小結 142

第7章 包 144
7.1 包的基礎 144
7.1.1 包的結構 146
7.1.2 包的導入 147
7.1.3 包的使用 153
7.1.4 Go語言工具箱 154
7.2 自定義包 156
7.2.1 包的制作 157
7.2.2 特定平臺的代碼 157
7.2.3 godoc生成文檔 158
7.2.4 包的打包與發布 159
7.2.5 自定義包的導入 164
7.3 本章小結 165

第8章 結構體與方法 166
8.1 結構體 166
8.1.1 結構體定義 166
8.1.2 結構體使用 172
8.1.3 帶標簽的結構體 175
8.1.4 匿名字段和內嵌結構體 176
8.2 類型系統 179
8.2.1 用戶自定義類型 179
8.2.2 值語義和引用語義 182
8.3 方法 184
8.3.1 方法聲明 184
8.3.2 為類型添加方法 187
8.3.3 工廠方法創建結構體 188
8.3.4 基于指針對象的方法 190
8.3.5 方法值和方法表達式 191
8.3.6 方法和未導出字段 193
8.3.7 嵌入類型的方法和繼承 194
8.4 本章小結 197

第9章 接口與反射 198
9.1 接口 198
9.1.1 接口是什么 199
9.1.2 接口類型與約定 204
9.1.3 接口實現 208
9.1.4 嵌套接口 210
9.1.5 接口賦值 211
9.1.6 接口查詢 213
9.1.7 接口組合 214
9.2 反射 215
9.2.1 方法和類型的反射 215
9.2.2 通過反射修改設置值 216
9.2.3 反射結構 218
9.2.4 Printf和反射 220
9.3 本章小結 222

第10章 并發編程 223
10.1 并發編程基礎 223
10.1.1 并發與并行 223
10.1.2 指定使用核心數 225
10.2 協程(goroutine) 227
10.2.1 協程基礎 228
10.2.2 協程間通信 229
10.3 通道(channel) 231
10.3.1 基本語法 232
10.3.2 select 232
10.3.3 緩沖機制 233
10.3.4 超時和計時器 234
10.3.5 channel的傳遞 235
10.3.6 單向channel 236
10.3.7 關閉channel 237
10.4 并發進階 237
10.4.1 多核并行化 237
10.4.2 協程同步 239
10.4.3 協程和恢復 242
10.5 本章小結 243

第11章 網絡編程 244
11.1 Socket編程 244
11.1.1 什么是Socket 244
11.1.2 Dial()函數 246
11.1.3 ICMP示例 247
11.1.4 TCP Socket 249
11.1.5 UDP Socket 253
11.2 HTTP編程 255
11.2.1 HTTP客戶端 255
11.2.2 HTTP服務器端 260
11.3 RPC編程 262
11.3.1 Go RPC 263
11.3.2 HTTP RPC 263
11.3.3 TCP RPC 266
11.3.4 JSON RPC 268
11.3.5 RPC接口 271
11.4 數據庫 272
11.4.1 database/sql接口 272
11.4.2 使用MySQL數據庫 277
11.4.3 使用SQLite數據庫 280
11.4.4 使用PostgreSQL數據庫 282
11.4.5 NoSQL數據庫操作 286
11.5 Go語言使用Cookie 287
11.5.1 設置Cookie 287
11.5.2 讀取Cookie 288
11.6 本章小結 288

第12章 I/O編程 289
12.1 輸入/輸出 289
12.1.1 io:基本I/O接口 289
12.1.2 fmt:格式化I/O 292
12.1.3 文本處理 298
12.2 文件系統 298
12.2.1 os:系統功能實現 298
12.2.2 path:兼容路徑操作 299
12.3 數據結構與算法 303
12.3.1 排序 304
12.3.2 container 310
12.4 本章小結 314

第13章 文件處理 315
13.1 文件操作 315
13.1.1 創建文件與查看狀態 316
13.1.2 重命名與移動 319
13.1.3 打開與關閉 319
13.1.4 刪除與截斷 321
13.1.5 讀寫文件 321
13.1.6 權限控制 325
13.1.7 文件鏈接 328
13.2 XML處理 330
13.2.1 解析XML 330
13.2.2 生成XML 333
13.3 JSON處理 336
13.3.1 解析JSON 336
13.3.2 生成JSON 338
13.4 日志記錄 340
13.4.1 Logrus 341
13.4.2 Seelog 342
13.5 壓縮 343
13.5.1 打包與解包 343
13.5.2 壓縮與解壓 345
13.6 本章小結 347

第14章 安全與測試 348
14.1 安全 348
14.1.1 安全相關的基礎概念 348
14.1.2 通信安全 350
14.2 測試 354
14.2.1 單元測試 354
14.2.2 基準測試 362
14.3 本章小結 368

第15章 內存管理 369
15.1 內存分配 369
15.1.1 內存管理基本概念 369
15.1.2 逃逸分析 373
15.2 TCMalloc 376
15.2.1 整體結構 377
15.2.2 小內存分配 378
15.2.3 CentralCache 379
15.2.4 大內存分配 381
15.3 Mspan(內存管理器) 384
15.4 垃圾回收 398
15.4.1 標記清理算法 399
15.4.2 標記實現 403
15.4.3 清理 406
15.4.4 監控 408
15.5 本章小結 408
序: