注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)Go語言精進(jìn)之路:從新手到高手的編程思想、方法和技巧 2

Go語言精進(jìn)之路:從新手到高手的編程思想、方法和技巧 2

Go語言精進(jìn)之路:從新手到高手的編程思想、方法和技巧 2

定 價(jià):¥119.00

作 者: 白明
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787111698227 出版時(shí)間: 2021-12-01 包裝: 平裝-膠訂
開本: 16開 頁數(shù): 480 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  Go入門容易,精進(jìn)難,如何才能像Go開發(fā)團(tuán)隊(duì)那樣寫出符合Go思維和語言慣例的高質(zhì)量代碼呢?本書將從編程思維和實(shí)踐技巧2個(gè)維度給出答案,幫助你在Go進(jìn)階的路上事半功倍。編程思維層面只有真正領(lǐng)悟了一門語言的設(shè)計(jì)哲學(xué)和編程思維,并能將之用于實(shí)踐,才算精通了這門語言。本書從Go語言設(shè)計(jì)者的視角對(duì)Go背后的設(shè)計(jì)哲學(xué)和編程思想進(jìn)行了梳理和分析,指引讀者體會(huì)那些看似隨意實(shí)則經(jīng)過深思熟慮的設(shè)計(jì)背后的秘密。實(shí)踐技巧層面實(shí)踐技巧源于對(duì)Go開發(fā)團(tuán)隊(duì)和Go社區(qū)開發(fā)的高質(zhì)量代碼的閱讀、挖掘和歸納,從項(xiàng)目結(jié)構(gòu)、代碼風(fēng)格、語法及其實(shí)現(xiàn)、接口、并發(fā)、同步、錯(cuò)誤與異常處理、測(cè)試與調(diào)試、性能優(yōu)化、標(biāo)準(zhǔn)庫、第三方庫、工具鏈、Z佳實(shí)踐、工程實(shí)踐等多個(gè)方面給出了改善Go代碼質(zhì)量、寫出符合 Go 思維和慣例的代碼的有效實(shí)踐。全書的內(nèi)容覆蓋如下10個(gè)大類,共66個(gè)主題,字字珠璣,句句箴言。(1)Go語言的一切(2)項(xiàng)目結(jié)構(gòu)、代碼風(fēng)格與標(biāo)識(shí)符命名(3)聲明、類型、語句與控制結(jié)構(gòu)(4)函數(shù)與方法(5)接口(6)并發(fā)編程(7)錯(cuò)誤處理(8)測(cè)試、性能剖析與調(diào)試(9)標(biāo)準(zhǔn)庫、反射與cgo(10)工具鏈與工程實(shí)踐學(xué)完這本書,你將擁有和 Go專家一樣的編程思維,寫出符合Go慣例和風(fēng)格的高質(zhì)量代碼,從眾多 Go 初學(xué)者中脫穎而出,快速實(shí)現(xiàn)從Go新手到專家的轉(zhuǎn)變!

作者簡(jiǎn)介

  白明(Tony Bai)資深Go技術(shù)專家和架構(gòu)師,有超過10年的服務(wù)端架構(gòu)設(shè)計(jì)和開發(fā)經(jīng)驗(yàn),擅長(zhǎng)服務(wù)器后端編程。曾任東軟集團(tuán)開發(fā)部技術(shù)總監(jiān)和東網(wǎng)科技高級(jí)架構(gòu)師,現(xiàn)為東軟睿馳智能網(wǎng)聯(lián)汽車業(yè)務(wù)線精通車聯(lián)網(wǎng)平臺(tái)的高級(jí)架構(gòu)師。精通Go、C、Python、Shell、Linux、Rancher、Docker、OpenStack、Kubernetes等技術(shù)棧。《七周七語言》譯者之一,GopherChina大會(huì)、開源中國源創(chuàng)會(huì)講師,麥思博客座培訓(xùn)師,tonybai.com技術(shù)博客博主。

圖書目錄

【本書分1、2兩冊(cè)。此鏈接為第2冊(cè),包含第8~10部分內(nèi)容】
第1~7部分內(nèi)容,請(qǐng)進(jìn)本書第1冊(cè)鏈接單獨(dú)購買
----------------------------------------
【以下為本書(第2冊(cè))內(nèi)容】
●第八部分 測(cè)試、性能剖析與調(diào)試
第40條 理解包內(nèi)測(cè)試與包外測(cè)試的差別
40.1 官方文檔的“自相矛盾”
40.2 包內(nèi)測(cè)試與包外測(cè)試
第41條 有層次地組織測(cè)試代碼
41.1 經(jīng)典模式—平鋪
41.2 xUnit家族模式
41.3 測(cè)試固件
第42條 優(yōu)先編寫表驅(qū)動(dòng)的測(cè)試
42.1 Go測(cè)試代碼的一般邏輯
42.2 表驅(qū)動(dòng)的測(cè)試實(shí)踐
42.3 表驅(qū)動(dòng)測(cè)試的優(yōu)點(diǎn)
42.4 表驅(qū)動(dòng)測(cè)試實(shí)踐中的注意事項(xiàng)
第43條 使用testdata管理測(cè)試依賴的外部數(shù)據(jù)文件
43.1 testdata目錄
43.2 golden文件慣用法
第44條 正確運(yùn)用fake、stub和mock等輔助單元測(cè)試
44.1 fake:真實(shí)組件或服務(wù)的簡(jiǎn)化實(shí)現(xiàn)版替身
44.2 stub:對(duì)返回結(jié)果有一定預(yù)設(shè)控制能力的替身
44.3 mock:專用于行為觀察和驗(yàn)證的替身
第45條 使用模糊測(cè)試讓潛在bug無處遁形
45.1 模糊測(cè)試在挖掘Go代碼的潛在bug中的作用
45.2 go-fuzz的初步工作原理
45.3 go-fuzz使用方法
45.4 使用go-fuzz建立模糊測(cè)試的示例
45.5 讓模糊測(cè)試成為“一等公民”
第46條 為被測(cè)對(duì)象建立性能基準(zhǔn)
46.1 性能基準(zhǔn)測(cè)試在Go語言中是“一等公民”
46.2 順序執(zhí)行和并行執(zhí)行的性能基準(zhǔn)測(cè)試
46.3 使用性能基準(zhǔn)比較工具
46.4 排除額外干擾,讓基準(zhǔn)測(cè)試更精確
第47條 使用pprof對(duì)程序進(jìn)行性能剖析
47.1 pprof的工作原理
47.2 使用pprof進(jìn)行性能剖析的實(shí)例
第48條 使用expvar輸出度量數(shù)據(jù),輔助定位性能瓶頸點(diǎn)
48.1 expvar包的工作原理
48.2 自定義應(yīng)用通過expvar輸出的度量數(shù)據(jù)
48.3 輸出數(shù)據(jù)的展示
第49條 使用Delve調(diào)試Go代碼
49.1 關(guān)于調(diào)試,你首先應(yīng)該知道的幾件事
49.2 Go調(diào)試工具的選擇
49.3 Delve調(diào)試基礎(chǔ)、原理與架構(gòu)
49.4 并發(fā)、Coredump文件與掛接進(jìn)程調(diào)試
 
●第九部分 標(biāo)準(zhǔn)庫、反射與cgo
第50條 理解Go TCP Socket網(wǎng)絡(luò)編程模型
50.1 TCP Socket網(wǎng)絡(luò)編程模型
50.2 TCP連接的建立
50.3 Socket讀寫
50.4 Socket屬性
50.5 關(guān)閉連接
第51條 使用net/http包實(shí)現(xiàn)安全通信
51.1 HTTPS:在安全傳輸層上運(yùn)行的HTTP協(xié)議
51.2 HTTPS安全傳輸層的工作機(jī)制
51.3 非對(duì)稱加密和公鑰證書
51.4 對(duì)服務(wù)端公鑰證書的校驗(yàn)
51.5 對(duì)客戶端公鑰證書的校驗(yàn)
第52條 掌握字符集的原理和字符 編碼方案間的轉(zhuǎn)換
52.1 字符與字符集
52.2 Unicode字符集的誕生與UTF-8編碼方案
52.3 字符編碼方案間的轉(zhuǎn)換
第53條 掌握使用time包的正確方式
53.1 時(shí)間的基礎(chǔ)操作
53.2 時(shí)間的格式化輸出
53.3 定時(shí)器的使用
第54條 不要忽略對(duì)系統(tǒng)信號(hào)的處理
54.1 為什么不能忽略對(duì)系統(tǒng)信號(hào)的處理
54.2 Go語言對(duì)系統(tǒng)信號(hào)處理的支持
54.3 使用系統(tǒng)信號(hào)實(shí)現(xiàn)程序的優(yōu)雅退出
第55條 使用crypto下的密碼學(xué)包構(gòu)建安全應(yīng)用
55.1 Go密碼學(xué)包概覽與設(shè)計(jì)原則
55.2 分組密碼算法
55.3 公鑰密碼
55.4 單向散列函數(shù)
55.5 消息認(rèn)證碼
55.6 數(shù)字簽名
55.7 隨機(jī)數(shù)生成
第56條 掌握bytes包和strings包的基本操作
56.1 查找與替換
56.2 比較
56.3 分割
56.4 拼接
56.5 修剪與變換
56.6 快速對(duì)接I/O模型
第57條 理解標(biāo)準(zhǔn)庫的讀寫模型
57.1 直接讀寫字節(jié)序列
57.2 直接讀寫抽象數(shù)據(jù)類型實(shí)例
57.3 通過包裹類型讀寫數(shù)據(jù)
第58條 掌握unsafe包的安全使用模式
58.1 簡(jiǎn)潔的unsafe包
58.2 unsafe包的典型應(yīng)用
58.3 正確理解unsafe.Pointer與uintptr
58.4 unsafe.Pointer的安全使用模式
第59條 謹(jǐn)慎使用reflect包提供的反射能力
59.1 Go反射的三大法則
59.2 反射世界的入口
59.3 反射世界的出口
59.4 輸出參數(shù)、interface{}類型變量及反射對(duì)象的可設(shè)置性
第60條 了解cgo的原理和使用開銷
60.1 Go調(diào)用C代碼的原理
60.2 在Go中使用C語言的類型
60.3 在Go中鏈接外部C庫
60.4 在C中使用Go函數(shù)
60.5 使用cgo的開銷
60.6 使用cgo代碼的靜態(tài)構(gòu)建
 
●第十部分 工具鏈與工程實(shí)踐
第61條 使用module管理包依賴
61.1 Go語言包管理演進(jìn)回顧
61.2 Go module:Go包依賴管理的生產(chǎn)標(biāo)準(zhǔn)
61.3 Go module代理
61.4 升級(jí)module的主版本號(hào)
第62條 構(gòu)建小Go程序容器鏡像
62.1 鏡像:繼承中的創(chuàng)新
62.2 “鏡像是個(gè)筐”:初學(xué)者的認(rèn)知
62.3 理性回歸:builder模式的崛起
62.4 “像賽車那樣減重”:追求小鏡像
62.5 “要有光”:對(duì)多階段構(gòu)建的支持
第63條 自定義Go包的導(dǎo)入路徑
63.1 govanityurls
63.2 使用govanityurls
第64條 熟練掌握Go常用工具
64.1 獲取與安裝
64.2 包或module檢視
64.3 構(gòu)建
64.4 運(yùn)行與診斷
64.5 格式化與靜態(tài)代碼檢查
64.6 重構(gòu)
64.7 查看文檔
64.8 代碼導(dǎo)航與洞察
第65條 使用go generate驅(qū)動(dòng)代碼生成“驅(qū)動(dòng)器”
65.2 go generate的工作原理
65.3 go generate的應(yīng)用場(chǎng)景
第66條 牢記Go的常見“陷阱”
66.1 語法規(guī)范類
66.2 標(biāo)準(zhǔn)庫類
【本購買鏈接為第2冊(cè)購買鏈接,僅包含以上第8~10部分內(nèi)容】

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)