舉報

會員
GO語言編程從入門到實踐
黃永祥 著
更新時間:2023-08-31 19:58:35
開會員,本書免費讀 >
最新章節:
20.6 小結
本書是一本來自一線開發者的Go語言編程入門書,深入淺出地講述了Go語言的語法特性和編程實踐,全書分為基礎和項目兩部分,基礎部分主要介紹Go語言開發環境的搭建、基礎語法、數據類型、指針、內置容器、函數、結構體、接口、反射、并發編程、包的應用與管理、目錄與文件管理、時間管理、數據庫編程等,項目部分主要介紹網頁自動化測試程序、網絡爬蟲程序、網絡信息反饋網站的開發實踐,此外,還介紹了Go語言程序的編譯方法。本書各章還提供了近20個動手練習小項目,便于讀者邊學邊練,迅速提升編程技能。本書通俗易懂,體系完備,注重實踐,適合對Go語言感興趣的各層次讀者使用。
- 20.6 小結 更新時間:2023-08-31 19:58:35
- 20.5 編譯參數說明
- 20.4 不同包多文件編譯
- 20.3 同包多文件編譯
- 20.2 單文件編譯
- 20.1 run與build的區別
- 第20章 編譯與運行
- 19.9 小結
- 19.8.6 網站運行與測試
- 19.8.5 編寫模板文件
- 19.8.4 定義模型與路由
- 19.8.3 搭建開發環境
- 19.8.2 項目架構設計
- 19.8.1 網站功能需求
- 19.8 網站項目:信息反饋平臺的開發
- 19.7 HTML模板引擎
- 19.6 多種響應處理方式
- 19.5 httprouter擴展路由
- 19.4 創建HTTP服務應用
- 19.3 創建UDP應用
- 19.2 創建TCP應用
- 19.1 TCP和UDP的區別
- 第19章 Go項目——網絡編程應用
- 18.8 小結
- 18.7 動手練習:編程實現爬取電影TOP100榜單
- 18.6 選擇數據存儲方式
- 18.5 轉碼與HTML解析
- 18.4 使用net/http發送請求
- 18.3 使用瀏覽器分析網站
- 18.2 請求頭
- 18.1 HTTP與HTTPS
- 第18章 Go項目——網絡爬蟲程序開發
- 17.12 小結
- 17.11 動手練習:編程實現爬取BOSS直聘招聘數據
- 17.10 Cookie讀寫
- 17.9 iframe與標簽頁切換
- 17.8 網頁加載等待
- 17.7 瀏覽器常用操作
- 17.6 網頁元素操作
- 17.5 網頁元素定位
- 17.4 瀏覽器配置與啟動
- 17.3 使用瀏覽器查找元素
- 17.2 安裝Selenium
- 17.1 了解自動化工具Selenium
- 第17章 Go項目——網頁自動化測試程序開發
- 16.11 小結
- 16.10 動手練習:編程實現員工管理系統
- 16.9 ORM框架:Gorm
- 16.8 go-redis讀寫Redis
- 16.7 mongo-driver讀寫MongoDB
- 16.6 go-sql-driver/mysql讀寫MySQL
- 16.5 go-sqlite3讀寫SQLite
- 16.4 安裝與使用Redis
- 16.3 安裝與使用MongoDB
- 16.2 安裝與使用MySQL
- 16.1 搭建SQLite運行環境
- 第16章 數據庫編程
- 15.8 小結
- 15.7 動手練習:編程實現個人備忘錄
- 15.6 延時、超時與定時
- 15.5 時間計算操作
- 15.4 時間類型的相互轉換
- 15.3 字符串格式化
- 15.2 結構體Time
- 15.1 時間戳
- 第15章 時間處理
- 14.10 小結
- 14.9 動手練習:編程實現學生管理系統
- 14.8 第三方包讀寫Excel文件
- 14.7 使用encoding/json讀寫JSON文件
- 14.6 使用encoding/csv讀寫CSV文件
- 14.5 使用bufio讀寫文件
- 14.4 使用io/ioutil讀寫文件
- 14.3 使用os讀寫文件
- 14.2 使用path獲取路徑信息
- 14.1 使用os實現系統操作
- 第14章 目錄與文件處理
- 13.10 小結
- 13.9 動手練習:編程實現排序算法
- 13.8 第三方包下載與使用
- 13.7 包管理工具go mod
- 13.6 包的自定義與使用
- 13.5 初始化函數init()與空導入
- 13.4 無包名調用
- 13.3 包的重命名
- 13.2 包命名與導入
- 13.1 常用內置包
- 第13章 包的應用與管理
- 12.9 小結
- 12.8 動手練習:編程實現出租車費用計算
- 12.7 泛型的概念與應用
- 12.6 new和make的區別
- 12.5 類型別名與自定義
- 12.4 值類型、引用類型與深淺拷貝
- 12.3 recover宕機時恢復執行
- 12.2 defer延時執行
- 12.1 panic觸發宕機
- 第12章 語法特性
- 11.14 小結
- 11.13 動手練習:編程模擬餐館經營場景
- 11.12 sync.Map的應用
- 11.11 sync加鎖機制
- 11.10 sync同步等待
- 11.9 Select處理多通道
- 11.8 關閉通道讀取數據
- 11.7 帶緩沖通道
- 11.6 無緩沖通道
- 11.5 通道
- 11.4 匿名函數創建Goroutine
- 11.3 函數創建Goroutine
- 11.2 Goroutine
- 11.1 異步的概念
- 第11章 并發編程
- 10.12 小結
- 10.11 動手練習:編程實現對象序列化處理
- 10.10 函數與反射
- 10.9 指針與反射
- 10.8 結構體與反射
- 10.7 集合與反射
- 10.6 切片與反射
- 10.5 反射的類型與種類
- 10.4 第三定律:修改反射變量的值
- 10.3 第二定律:反射變量轉接口變量
- 10.2 第一定律:接口變量轉反射變量
- 10.1 什么是反射
- 第10章 反射
- 9.8 小結
- 9.7 動手練手:編程實現營救村民游戲
- 9.6 接口的類型斷言
- 9.5 任意數據類型的空接口
- 9.4 接口的自由組合
- 9.3 多態與工廠函數
- 9.2 鴨子類型
- 9.1 接口定義與使用
- 第9章 接口
- 8.11 小結
- 8.10 動手練習:編程實現多鍵索引查詢數據
- 8.9 動手練習:編程實現結構體與JSON互換
- 8.8 結構體方法:指針與值接收者
- 8.7 自定義構造函數
- 8.6 結構體嵌套
- 8.5 匿名結構體與匿名成員
- 8.4 結構體標簽
- 8.3 指針方式的實例化
- 8.2 結構體定義與實例化
- 8.1 Go的“面向對象”
- 第8章 結構體
- 7.8 小結
- 7.7 動手練習:編程實現創建文件后綴名
- 7.6 函數自身調用
- 7.5 引用外部變量的函數
- 7.4 沒有名字的函數
- 7.3 函數以變量表示
- 7.2 不固定參數數量
- 7.1 函數定義與調用
- 第7章 函數
- 6.7 小結
- 6.6 動手練習:編程實現產品抽樣檢測
- 6.5.3 遍歷列表元素
- 6.5.2 列表元素操作
- 6.5.1 列表定義
- 6.5 列表
- 6.4 動手練習:編程實現集合與JSON互換
- 6.3.2 刪除集合元素
- 6.3.1 集合定義與操作
- 6.3 集合
- 6.2.5 切片長度與容量
- 6.2.4 復制切片
- 6.2.3 截取切片元素
- 6.2.2 新增切片元素
- 6.2.1 切片定義與操作
- 6.2 切片
- 6.1.3 多維數組
- 6.1.2 數組初始化定義
- 6.1.1 數組定義與操作
- 6.1 數組
- 第6章 內置容器
- 5.7 小結
- 5.6 動手練習:編程實現彩票36選7
- 5.5 指針的指針
- 5.4 切片指針
- 5.3 指針賦值與取值
- 5.2 指針定義與空指針
- 5.1 指針的概念
- 第5章 指針
- 4.10 小結
- 4.9 動手練習:編程實現簡易計算器
- 4.8 goto跳到指定代碼
- 4.7 continue跳過本次循環
- 4.6 break越級終止循環
- 4.5 for-range獲取鍵值
- 4.4 for的循環遍歷
- 4.3 switch的多條件分支
- 4.2 if的多層嵌套
- 4.1 if的條件判斷
- 第4章 流程控制
- 3.10 小結
- 3.9 動手練習:編程實現在線客服熱線
- 3.8.3 浮點型與字符串
- 3.8.2 整型與字符串
- 3.8.1 整型與浮點型
- 3.8 轉換數據類型
- 3.7.8 字符串替換
- 3.7.7 字符串分割
- 3.7.6 字符位置與截取
- 3.7.5 遍歷字符串
- 3.7.4 獲取字符串長度
- 3.7.3 字符串拼接
- 3.7.2 字符串格式化
- 3.7.1 字符串與轉義符
- 3.7 字符串操作
- 3.6 字符類型
- 3.5 ASCII與Unicode編碼
- 3.4 布爾型的應用
- 3.3 復數的計算
- 3.2 浮點類型與精度丟失
- 3.1 整型的取值范圍
- 第3章 數據類型
- 2.6 小結
- 2.5 動手練習:編程實現個人健康評測
- 2.4 代碼注釋
- 2.3.7 運算符優先級
- 2.3.6 其他運算符
- 2.3.5 位運算符
- 2.3.4 邏輯運算符
- 2.3.3 賦值運算符
- 2.3.2 關系運算符
- 2.3.1 算術運算符
- 2.3 運算符的使用
- 2.2.2 常量與iota
- 2.2.1 變量定義與賦值
- 2.2 變量與常量
- 2.1.6 唯一標識符
- 2.1.5 導出標識符
- 2.1.4 預聲明標識符
- 2.1.3 空白標識符
- 2.1.2 標識符命名規范
- 2.1.1 關鍵字
- 2.1 關鍵字與標識符
- 第2章 基礎語法
- 1.10 小結
- 1.9 動手練習:編程實現人機交互
- 1.8 第一個Go程序“Hello World”
- 1.7 搭建GoLand環境
- 1.6 安裝GoLand
- 1.5 在macOS下安裝Go
- 1.4 在Linux下安裝Go
- 1.3 在Windows下安裝Go
- 1.2 Go語言的優勢與特性
- 1.1 Go語言簡介
- 第1章 認識Go語言
- 讀者對象
- 源代碼下載
- 本書特色
- 本書結構
- 前言
- 內容簡介
- 作者簡介
- 版權信息
- 封面
- 封面
- 版權信息
- 作者簡介
- 內容簡介
- 前言
- 本書結構
- 本書特色
- 源代碼下載
- 讀者對象
- 第1章 認識Go語言
- 1.1 Go語言簡介
- 1.2 Go語言的優勢與特性
- 1.3 在Windows下安裝Go
- 1.4 在Linux下安裝Go
- 1.5 在macOS下安裝Go
- 1.6 安裝GoLand
- 1.7 搭建GoLand環境
- 1.8 第一個Go程序“Hello World”
- 1.9 動手練習:編程實現人機交互
- 1.10 小結
- 第2章 基礎語法
- 2.1 關鍵字與標識符
- 2.1.1 關鍵字
- 2.1.2 標識符命名規范
- 2.1.3 空白標識符
- 2.1.4 預聲明標識符
- 2.1.5 導出標識符
- 2.1.6 唯一標識符
- 2.2 變量與常量
- 2.2.1 變量定義與賦值
- 2.2.2 常量與iota
- 2.3 運算符的使用
- 2.3.1 算術運算符
- 2.3.2 關系運算符
- 2.3.3 賦值運算符
- 2.3.4 邏輯運算符
- 2.3.5 位運算符
- 2.3.6 其他運算符
- 2.3.7 運算符優先級
- 2.4 代碼注釋
- 2.5 動手練習:編程實現個人健康評測
- 2.6 小結
- 第3章 數據類型
- 3.1 整型的取值范圍
- 3.2 浮點類型與精度丟失
- 3.3 復數的計算
- 3.4 布爾型的應用
- 3.5 ASCII與Unicode編碼
- 3.6 字符類型
- 3.7 字符串操作
- 3.7.1 字符串與轉義符
- 3.7.2 字符串格式化
- 3.7.3 字符串拼接
- 3.7.4 獲取字符串長度
- 3.7.5 遍歷字符串
- 3.7.6 字符位置與截取
- 3.7.7 字符串分割
- 3.7.8 字符串替換
- 3.8 轉換數據類型
- 3.8.1 整型與浮點型
- 3.8.2 整型與字符串
- 3.8.3 浮點型與字符串
- 3.9 動手練習:編程實現在線客服熱線
- 3.10 小結
- 第4章 流程控制
- 4.1 if的條件判斷
- 4.2 if的多層嵌套
- 4.3 switch的多條件分支
- 4.4 for的循環遍歷
- 4.5 for-range獲取鍵值
- 4.6 break越級終止循環
- 4.7 continue跳過本次循環
- 4.8 goto跳到指定代碼
- 4.9 動手練習:編程實現簡易計算器
- 4.10 小結
- 第5章 指針
- 5.1 指針的概念
- 5.2 指針定義與空指針
- 5.3 指針賦值與取值
- 5.4 切片指針
- 5.5 指針的指針
- 5.6 動手練習:編程實現彩票36選7
- 5.7 小結
- 第6章 內置容器
- 6.1 數組
- 6.1.1 數組定義與操作
- 6.1.2 數組初始化定義
- 6.1.3 多維數組
- 6.2 切片
- 6.2.1 切片定義與操作
- 6.2.2 新增切片元素
- 6.2.3 截取切片元素
- 6.2.4 復制切片
- 6.2.5 切片長度與容量
- 6.3 集合
- 6.3.1 集合定義與操作
- 6.3.2 刪除集合元素
- 6.4 動手練習:編程實現集合與JSON互換
- 6.5 列表
- 6.5.1 列表定義
- 6.5.2 列表元素操作
- 6.5.3 遍歷列表元素
- 6.6 動手練習:編程實現產品抽樣檢測
- 6.7 小結
- 第7章 函數
- 7.1 函數定義與調用
- 7.2 不固定參數數量
- 7.3 函數以變量表示
- 7.4 沒有名字的函數
- 7.5 引用外部變量的函數
- 7.6 函數自身調用
- 7.7 動手練習:編程實現創建文件后綴名
- 7.8 小結
- 第8章 結構體
- 8.1 Go的“面向對象”
- 8.2 結構體定義與實例化
- 8.3 指針方式的實例化
- 8.4 結構體標簽
- 8.5 匿名結構體與匿名成員
- 8.6 結構體嵌套
- 8.7 自定義構造函數
- 8.8 結構體方法:指針與值接收者
- 8.9 動手練習:編程實現結構體與JSON互換
- 8.10 動手練習:編程實現多鍵索引查詢數據
- 8.11 小結
- 第9章 接口
- 9.1 接口定義與使用
- 9.2 鴨子類型
- 9.3 多態與工廠函數
- 9.4 接口的自由組合
- 9.5 任意數據類型的空接口
- 9.6 接口的類型斷言
- 9.7 動手練手:編程實現營救村民游戲
- 9.8 小結
- 第10章 反射
- 10.1 什么是反射
- 10.2 第一定律:接口變量轉反射變量
- 10.3 第二定律:反射變量轉接口變量
- 10.4 第三定律:修改反射變量的值
- 10.5 反射的類型與種類
- 10.6 切片與反射
- 10.7 集合與反射
- 10.8 結構體與反射
- 10.9 指針與反射
- 10.10 函數與反射
- 10.11 動手練習:編程實現對象序列化處理
- 10.12 小結
- 第11章 并發編程
- 11.1 異步的概念
- 11.2 Goroutine
- 11.3 函數創建Goroutine
- 11.4 匿名函數創建Goroutine
- 11.5 通道
- 11.6 無緩沖通道
- 11.7 帶緩沖通道
- 11.8 關閉通道讀取數據
- 11.9 Select處理多通道
- 11.10 sync同步等待
- 11.11 sync加鎖機制
- 11.12 sync.Map的應用
- 11.13 動手練習:編程模擬餐館經營場景
- 11.14 小結
- 第12章 語法特性
- 12.1 panic觸發宕機
- 12.2 defer延時執行
- 12.3 recover宕機時恢復執行
- 12.4 值類型、引用類型與深淺拷貝
- 12.5 類型別名與自定義
- 12.6 new和make的區別
- 12.7 泛型的概念與應用
- 12.8 動手練習:編程實現出租車費用計算
- 12.9 小結
- 第13章 包的應用與管理
- 13.1 常用內置包
- 13.2 包命名與導入
- 13.3 包的重命名
- 13.4 無包名調用
- 13.5 初始化函數init()與空導入
- 13.6 包的自定義與使用
- 13.7 包管理工具go mod
- 13.8 第三方包下載與使用
- 13.9 動手練習:編程實現排序算法
- 13.10 小結
- 第14章 目錄與文件處理
- 14.1 使用os實現系統操作
- 14.2 使用path獲取路徑信息
- 14.3 使用os讀寫文件
- 14.4 使用io/ioutil讀寫文件
- 14.5 使用bufio讀寫文件
- 14.6 使用encoding/csv讀寫CSV文件
- 14.7 使用encoding/json讀寫JSON文件
- 14.8 第三方包讀寫Excel文件
- 14.9 動手練習:編程實現學生管理系統
- 14.10 小結
- 第15章 時間處理
- 15.1 時間戳
- 15.2 結構體Time
- 15.3 字符串格式化
- 15.4 時間類型的相互轉換
- 15.5 時間計算操作
- 15.6 延時、超時與定時
- 15.7 動手練習:編程實現個人備忘錄
- 15.8 小結
- 第16章 數據庫編程
- 16.1 搭建SQLite運行環境
- 16.2 安裝與使用MySQL
- 16.3 安裝與使用MongoDB
- 16.4 安裝與使用Redis
- 16.5 go-sqlite3讀寫SQLite
- 16.6 go-sql-driver/mysql讀寫MySQL
- 16.7 mongo-driver讀寫MongoDB
- 16.8 go-redis讀寫Redis
- 16.9 ORM框架:Gorm
- 16.10 動手練習:編程實現員工管理系統
- 16.11 小結
- 第17章 Go項目——網頁自動化測試程序開發
- 17.1 了解自動化工具Selenium
- 17.2 安裝Selenium
- 17.3 使用瀏覽器查找元素
- 17.4 瀏覽器配置與啟動
- 17.5 網頁元素定位
- 17.6 網頁元素操作
- 17.7 瀏覽器常用操作
- 17.8 網頁加載等待
- 17.9 iframe與標簽頁切換
- 17.10 Cookie讀寫
- 17.11 動手練習:編程實現爬取BOSS直聘招聘數據
- 17.12 小結
- 第18章 Go項目——網絡爬蟲程序開發
- 18.1 HTTP與HTTPS
- 18.2 請求頭
- 18.3 使用瀏覽器分析網站
- 18.4 使用net/http發送請求
- 18.5 轉碼與HTML解析
- 18.6 選擇數據存儲方式
- 18.7 動手練習:編程實現爬取電影TOP100榜單
- 18.8 小結
- 第19章 Go項目——網絡編程應用
- 19.1 TCP和UDP的區別
- 19.2 創建TCP應用
- 19.3 創建UDP應用
- 19.4 創建HTTP服務應用
- 19.5 httprouter擴展路由
- 19.6 多種響應處理方式
- 19.7 HTML模板引擎
- 19.8 網站項目:信息反饋平臺的開發
- 19.8.1 網站功能需求
- 19.8.2 項目架構設計
- 19.8.3 搭建開發環境
- 19.8.4 定義模型與路由
- 19.8.5 編寫模板文件
- 19.8.6 網站運行與測試
- 19.9 小結
- 第20章 編譯與運行
- 20.1 run與build的區別
- 20.2 單文件編譯
- 20.3 同包多文件編譯
- 20.4 不同包多文件編譯
- 20.5 編譯參數說明
- 20.6 小結 更新時間:2023-08-31 19:58:35