| | | Head First Go語言程序設計 | 該商品所屬分類:圖書 -> 科技 | 【市場價】 | 1280-1856元 | 【優惠價】 | 800-1160元 | 【作者】 | 傑伊·麥克格瑞恩 | 【折扣說明】 | 一次購物滿999元台幣免運費+贈品 一次購物滿2000元台幣95折+免運費+贈品 一次購物滿3000元台幣92折+免運費+贈品 一次購物滿4000元台幣88折+免運費+贈品
| 【本期贈品】 | ①優質無紡布環保袋,做工棒!②品牌簽字筆 ③品牌手帕紙巾
| |
版本 | 正版全新電子版PDF檔 | 您已选择: | 正版全新 | 溫馨提示:如果有多種選項,請先選擇再點擊加入購物車。*. 電子圖書價格是0.69折,例如了得網價格是100元,電子書pdf的價格則是69元。 *. 購買電子書不支持貨到付款,購買時選擇atm或者超商、PayPal付款。付款後1-24小時內通過郵件傳輸給您。 *. 如果收到的電子書不滿意,可以聯絡我們退款。謝謝。 | | | | 內容介紹 | |
![](/c3/10022568158240.jpg)
出版社:機械工業出版社 ISBN:9787111664932 商品編碼:10022568158240 品牌:文軒 出版時間:2020-09-01 代碼:149 作者:傑伊·麥克格瑞恩
"![](http://img14.360buyimg.com/cms/jfs/t1/203358/9/26405/134589/62f4a34cEcdefae53/84e082ed3b03dbc0.jpg) 作 者:(美)傑伊·麥克格瑞恩 著 劉紅泉,王佳 譯 定 價:149 出 版 社:機械工業出版社 出版日期:2020年09月01日 頁 數:560 裝 幀:平裝 ISBN:9787111664932 ●前言 這本書是給誰看的 我們知道你在想什麼 我們知道你的大腦在想什麼 我們是這樣做的 說明 致謝 1 讓我們開始吧:語法基礎 準備好,出發 Go Playground 這一切意味著什麼 如果出了問題怎麼辦 調用函數 Println函數 使用其他包中的函數 函數返回值 Go程序模板 字符串 符文 布爾值 數字 數學運算與比較 類型 聲明變量 零值 短變量聲明 命名規則 轉換 在你的計算機上安裝Go 編譯Go代碼 Go工具 使用“go run”快速嘗試代碼 你的Go工具箱 2 接下來運行哪些代碼:條件和循環 調用方法 評分 函數或方法的多個返回值 選項1:使用空白標識符忽略錯誤返回值 選項2:處理錯誤 條件 有條件地記錄致命錯誤 避免遮蓋名字 將字符串轉換為數字 塊 塊和變量的作用域 我們已經完成了評分程序 短變量聲明中隻有一個變量必須是新的 讓我們創建一個遊戲 包名與導入路徑 生成隨機數 從鍵盤獲取整數 將猜測與目標進行比較 循環 初始化和標志(post)語句是可選的 在我們的猜謎遊戲中使用循環 中斷我們的猜測循環 顯示目標 恭喜你,遊戲結束了 你的Go工具箱 3 調用:函數 一些重復的代碼 使用Printf和Sprintf格式化輸出 格式化動詞 格式化值寬度 格式化小數寬度 在油漆計算器中使用Printf 聲明函數 聲明函數參數 在油漆計算器中使用函數 函數和變量的作用域 函數返回值 在油漆計算器中使用返回值 paintNeeded函數需要錯誤處理 錯誤值 聲明多個返回值 在paintNeeded函數中使用多個返回值 始終處理錯誤 函數形參接收實參的副本 指針 指針類型 獲取或更改指針的值 函數指針 使用指針修復我們的“double”函數 你的Go工具箱 4 代碼集:包 不同的程序,相同的函數 使用包在程序之間共享代碼 Go工作區目錄保存包代碼 創建一個新包 將包導入程序 包使用相同的文件布局 包命名規範 包限定符 將共享代碼移動到包中 常量 嵌套的包目錄和導入路徑 使用“go install”安裝程序可執行文件 使用GOPATH環境變量更改工作區 設置GOPATH 發布包 使用“go get”下載和安裝包 使用“go doc”閱讀包文檔 使用doc注釋記錄包 在Web瀏覽器中查看文檔 使用“godoc”提供HTML文檔 “godoc”服務器包含你的包 你的Go工具箱 5 列表:數組 數組保存值的集合 數組中的零值 數組字面量 “fmt”包中的函數知道如何處理數組 在循環裡訪素 使用“len”函數檢查數組長度 使用“for...range”安全遍歷數組 在“for...range”循環中使用空白標識符 得到數組中數字之和 得到數組中數字的平均值 讀取文本文件 將文本文件讀入數組 更新我們的“average”程序來讀取文本文件 我們的程序隻能處理三個值 你的Go工具箱 6 追加的問題:切片 切片 切片字面量 切片運算符 底層數組 修改底層數組,修改切片 使用“append”函數在切片上添加數據 切片和零值 使用切片和“append”讀取額外的文件行 嘗試我們改進後的程序 出錯時返回nil值切片 命令行參數 從os.Args切片獲取命令行參數 切片運算符可用於其他切片 更新程序以使用命令行參數 可變長參數函數 使用可變長參數函數 使用可變長參數函數計算平均值 向可變長參數函數傳遞一個切片 切片拯救了我們 你的Go工具箱 7 標簽數據:映射 計票 從文件中讀取名字 使用困難的切片方法對名字計數 映射 映射字面量 映射中的零值 映射變量的零值是nil 如何區分已經賦值的值和零值 使用“delete”函數刪除鍵/值對 使用映射來更新計票程序 對映射進行for...range循環 for...range循環以隨機順序處理映射 使用for...range循環來更新計票程序 計票程序完成 你的Go工具箱 8 構建存儲:struct 切片和映射保存一種類型的值 struct是由多種類型的值構建的 使用點運算符訪問struct字段 在struct中保存訂閱者的數據 定義類型和struct 為雜志訂閱者定義一個類型 與函數一起使用已定義類型 使用函數修改struct 通過指針訪問struct的字段 使用指針傳遞大型struct 將struct類型移動到另一個包 定義類型的名稱首字母必須大寫纔能導出該類型 struct字段的名稱首字母必須大寫纔能導出該字段 struct字面量 創建一個Employee struct類型 創建一個Address struct類型 將struct作為字段增加到另一個類型中 在另一個struct中設置struct 匿名struct字段 嵌入struct 我們定義的類型完成了 你的Go工具箱 9 我喜歡的類型:定義類型 現實生活中的類型錯誤 具有底層基礎類型的定義類型 定義類型和運算符 使用函數進行類型轉換 使用方法修復函數名衝突 定義方法 接收器參數(幾乎)就是另一個參數 方法(幾乎)就像一個函數 指針類型的接收器參數 使用方法將Liters和Milliliters轉換為Gallons 使用方法將Gallons轉換為Liters和Milliliters 你的Go工具箱 10 保密:封裝和嵌入 創建一個日期struct類型 人們將Date struct的字段設置為無效值 setter方法 setter方法需要指針接收器 添加其餘的setter方法 在setter方法中添加校驗 字段仍可以設置為無效值 將Date類型移到另外的包中 將Date字段設為未導出狀態 通過導出的方法訪問未導出的字段 getter方法 封裝 在Event類型中嵌入Date類型 未導出的字段不會被提升 導出的方法像字段一樣被提升 封裝Event的Title字段 提升的方法與外部類型的方法共存 我們的calendar包完成了 你的Go工具箱 11 你能做什麼:接口 具有相同方法的兩種不同類型 隻能接受一種類型的方法參數 接口 定義滿足接口的類型 具體類型和接口類型 分配滿足接口的任何類型 你隻能調用接口中定義的方法 使用接口修復playList函數 類型斷言 類型斷言失敗 當類型斷言失敗時避免異常 使用類型斷言測試TapePlayer和TapeRecorder “error”接口 Stringer接口 空接口 你的Go工具箱 12 重新站起來:從失敗中恢復 從文件中讀取數字,重新訪問 任何錯誤都將阻止關閉文件 延遲函數調用 使用延遲函數調用從錯誤中恢復 使用延遲函數調用確保文件關閉 列出目錄中的文件 列出子目錄中的文件(會更棘手) 遞歸函數調用 遞歸地列出目錄內容 遞歸函數中的錯誤處理 發起一個panic 堆棧跟蹤 延遲調用在崩潰前完成 通過scanDirectory使用“panic” 何時產生panic “recover”函數 panic值從recover中返回 從scanDirectory中的panic恢復 恢復panic 你的Go工具箱 13 分享工作:goroutine和channel 檢索網頁 多任務 使用goroutine的並發性 使用goroutine 在responseSize函數中使用goroutine 我們不能直接控制goroutine何時運行 go語句不能使用返回值 使用channel發送和接收值 同步goroutine與channel 觀察goroutine同步 使用channel修復我們的網頁大小程序 更新我們的channel以攜帶一個struct 你的Go工具箱 14 代碼的質量保證:自動化測試 自動化測試比別人先發現bug 一個應該有自動化測試的函數 我們引入了一個bug 編寫測試 使用“go test”命令運行測試 測試實際的返回值 使用“Errorf”方法獲得更詳細的測試失敗消息 測試“helper”函數 讓測試通過 測試驅動開發 另一個需要修復的bug 運行特定的測試集 表驅動測試 使用測試修復panic代碼 你的Go工具箱 15 響應請求:Web應用程序 用Go編寫Web應用程序 瀏覽器、請求、服務器和響應 一個簡單的Web應用程序 你的計算機在自言自語 講解一個簡單的Web應用程序 資源路徑 對不同的資源路徑做出不同的響應 一級函數 將函數傳遞給其他函數 函數作為類型 接下來是什麼 你的Go工具箱 16 要遵循的模式:HTML模板 留言簿應用程序 處理請求和檢查錯誤的函數 設置一個項目目錄並嘗試應用程序 用HTML創建簽名列表 使我們的應用程序以HTML響應 “text/template”包 使用帶有模板的Execute方法的io.Writer接口 滿足io.Writer的ResponseWriter和os.Stdout 使用action將數據插入模板 使用“if”action使模板的某些部分可選 使用“range”action來重復模板的某部分 使用action將struct字段插入模板 從文件中讀入簽名切片 保存簽名和簽名數的struct 更新模板以包含簽名 允許用戶使用HTML表單添加數據 表單提交請求 用於表單提交的Path和HTTP方法 從請求中獲取表單字段的值 保存表單數據 HTTP重定向 我們完整的應用程序代碼 你的Go工具箱 A 理解os.OpenFile:打開文件 理解os.OpenFile 將標志常量傳遞到os.OpenFile 二進制表示法 位運算符 按位與運算符 按位或運算符 對“os”包常量使用按位或運算 使用按位或運算修復os.OpenFile選項 Unix樣式的文件權限 使用os.FileMode類型表示權限 八進制表示法 將八進制值轉換為FileMode值 解釋對os.OpenFile的調用 B 有六件事我們沒有涉及:剩下的內容 #1 “if”的初始化語句 #2 switch語句 #3 更多基本類型 #4 更多關於符文的信息 #5 有緩衝的channel #6 進一步閱讀 Go是為高性能網絡和多處理而設計的, 但與python和javascript一樣,該語言易於閱讀和使用。通過這本實用的實踐指南,讀者將學習如何使用演示實際語言的清晰示例來編寫Go代碼。最重要的是,讀者將會了解到用人單位希望入門級Go開發人員所知曉的慣例和技術。主要內容包括語法基礎、條件和循環、函數、包、數組、映射、結構、封裝和嵌入、接口、故障恢復、共享、自動化測試、Web應用程序等。 (美)傑伊·麥克格瑞恩 著 劉紅泉,王佳 譯 傑伊·麥克格瑞恩,Head First Ruby和Head First GD的作者,這兩本書都由0’Reilly。他還在Treehouse講授軟件開發。 ![](https://img10.360buyimg.com/imgzone/jfs/t1/147514/7/5440/73116/5f34a3beE3ba58783/f5b2391383f5625c.jpg)
" | | | | | |