《Go語言編程(七牛雲端儲存團隊執筆)》
基本資料
作者: 許式偉 呂桂華
叢書名: 圖靈原創
出版社:人民郵電出版社
ISBN:9787115290366
上架時間:2012-8-15
出版日期:2012 年8月
開本:16開
頁碼:1
版次:1-1
所屬分類: 電腦 > 軟體與程式設計 > 綜合 > 進階程式語言設計
更多關於 》》》《Go語言編程(七牛雲端儲存團隊執筆)》
內容簡介書籍
電腦書籍
《go語言編程》首先引領讀者快速探索go 語言的全貌,迅速消除讀者對這門語言的陌生感,然後循序漸進地介紹了go 語言的面向程和物件導向的編程文法,其中穿插了一些與其他主流語言的比較以讓讀者理解go 語言的設計動機,接著探討了go 語言重要的並行編程方法,之後介紹了網路編程、工程管理、安全編程、開發工具等非文法相關但非常重要的內容,最後為一列關於go 語言的文章,可以協助讀者更深入瞭解這門全新的語言。
《go語言編程》適合所有層次的開發人員閱讀。
目錄
《go語言編程》
第1章 初識go語言 1
1.1 語言簡史 1
1.2 語言特性 2
1.2.1 自動記憶體回收 3
1.2.2 更豐富的內建類型 4
1.2.3 函數多傳回值 5
1.2.4 錯誤處理 6
1.2.5 匿名函數和閉包 6
1.2.6 類型和介面 7
1.2.7 並發編程 8
1.2.8 反射 9
1.2.9 語言互動性 10
1.3 第一個go程式 11
1.3.1 代碼解讀 11
1.3.2 編譯環境準備 12
1.3.3 編譯器 12
1.4 開發工具選擇 13
1.5 工程管理 13
1.6 問題追蹤和調試 18
1.6.1 列印日誌 18
1.6.2 gdb調試 18
1.7 如何尋求協助 18
1.7.1 郵件清單 19
1.7.2 網站資源 19
1.8 小結 19
第2章 順序編程 20
2.1 變數 20
2.1.1 變數聲明 20
2.1.2 變數初始化 21
2.1.3 變數賦值 21
2.1.4 匿名變數 22
2.2 常量 22
2.2.1 字面常量 22
2.2.2 常量定義 23
2.2.3 預定義常量 23
2.2.4 枚舉 24
2.3 類型 24
2.3.1 布爾類型 25
2.3.2 整型 25
2.3.3 浮點型 27
2.3.4 複數類型 28
2.3.5 字串 28
2.3.6 字元類型 30
2.3.7 數組 31
2.3.8 數組切片 32
2.3.9 map 36
2.4 流程式控制制 38
2.4.1 條件陳述式 38
2.4.2 選擇語句 39
2.4.3 迴圈語句 40
2.4.4 跳躍陳述式 41
2.5 函數 41
2.5.1 函數定義 42
2.5.2 函數調用 42
2.5.3 不定參數 43
2.5.4 多傳回值 45
2.5.5 匿名函數與閉包 45
2.6 錯誤處理 47
2.6.1 error介面 47
2.6.2 defer 48
2.6.3 panic()和recover() 49
2.7 完整樣本 50
2.7.1 程式結構 51
2.7.2 主程式 51
2.7.3 演算法實現 54
2.7.4 主程式 57
2.7.5 構建與執行 59
2.8 小結 61
第3章 物件導向編程 62
3.1 類型系統 62
3.1.1 為類型添加方法 63
3.1.2 值語義和引用語義 66
3.1.3 結構體 67
3.2 初始化 68
3.3 匿名組合 68
3.4 可見度 71
3.5 介面 71
3.5.1 其他語言的介面 71
3.5.2 非侵入式介面 73
3.5.3 介面賦值 74
3.5.4 介面查詢 76
3.5.5 類型查詢 78
3.5.6 介面組合 78
3.5.7 any類型 79
3.6 完整樣本 79
3.6.1 音樂庫 80
3.6.2 音樂播放 82
3.6.3 主程式 84
3.6.4 構建運行 86
3.6.5 遺留問題 86
3.7 小結 87
第4章 並發編程 88
4.1 並發基礎 88
4.2 協程 90
4.3 goroutine 90
4.4 並發通訊 91
4.5 channel 94
4.5.1 基本文法 95
4.5.2 select 95
4.5.3 緩衝機制 96
4.5.4 逾時機制 97
4.5.5 channel的傳遞 98
4.5.6 單向channel 98
4.5.7 關閉channel 99
4.6 多核並行化 100
4.7 出讓時間片 101
4.8 同步 101
4.8.1 同步鎖 101
4.8.2 全域唯一性操作 102
4.9 完整樣本 103
4.9.1 簡單ipc架構 105
4.9.2 中央伺服器 108
4.9.3 主程式 113
4.9.4 運行程式 116
4.10 小結 117
第5章 網路編程 118
5.1 socket編程 118
5.1.1 dial()函數 118
5.1.2 icmp樣本程式 119
5.1.3 tcp樣本程式 121
5.1.4 更豐富的網路通訊 122
5.2 http編程 124
5.2.1 http用戶端 124
5.2.2 http服務端 130
5.3 rpc編程 132
5.3.1 go語言中的rpc支援與
處理 132
5.3.2 gob簡介 134
5.3.3 設計優雅的rpc介面 134
5.4 json處理 135
5.4.1 編碼為json格式 136
5.4.2 解碼json資料 137
5.4.3 解碼未知結構的json資料 138
5.4.4 json的流式讀寫 140
5.5 網站開發 140
5.5.1 最簡單的網站程式 141
5.5.2 net/http包簡介 141
5.5.3 開發一個簡單的相簿網站 142
5.6 小結 157
第6章 安全編程 158
6.1 資料加密 158
6.2 數位簽章 158
6.3 數位憑證 159
6.4 pki體系 159
6.5 go語言的雜湊函數 159
6.6 加密通訊 160
6.6.1 加密通訊流程 161
6.6.2 支援https的web伺服器 162
6.6.3 支援https的檔案伺服器 165
6.6.4 基於ssl/tls的echo程式 166
6.7 小結 169
第7章 工程管理 170
7.1 go命令列工具 170
7.2 代碼風格 172
7.2.1 強制性編碼規範 172
7.2.2 非強制性編碼風格建議 173
7.3 遠程import支援 175
7.4 工程組織 175
7.4.1 gopath 176
7.4.2 目錄結構 176
7.5 文件管理 177
7.6 工程構建 180
7.7 跨平台開發 180
7.7.1 交叉編譯 181
7.7.2 android支援 182
7.8 單元測試 183
7.9 打包分發 184
7.10 小結 184
第8章 開發工具 186
8.1 選擇開發工具 186
8.2 gedit 187
8.2.1 文法高亮 187
8.2.2 編譯環境 187
8.3 vim 188
8.4 eclipse 189
8.5 notepad++ 192
8.5.1 文法高亮 192
8.5.2 編譯環境 192
8.6 liteide 193
8.7 小結 195
第9章 進階話題 196
9.1 反射 196
9.1.1 基本概念 196
9.1.2 基本用法 197
9.1.3 對結構的反射操作 199
9.2 語言互動性 199
9.2.1 類型映射 200
9.2.2 字串映射 201
9.2.3 c程式 201
9.2.4 函數調用 202
9.2.5 編譯cgo 203
9.3 連結符號 203
9.4 goroutine機理 204
9.4.1 協程 204
9.4.2 協程的c語言實現 205
9.4.3 協程庫概述 205
9.4.4 任務 208
9.4.5 任務調度 210
9.4.6 環境切換 211
9.4.7 通訊機制 215
9.5 介面機理 216
9.5.1 類型賦值給介面 217
9.5.2 介面查詢 223
9.5.3 介面賦值 224
附錄a 225
本圖書資訊來源於:中國互動出版網