Go語言愛好者周刊:第 128 期
這里記錄每周值得分享的 Go 語言相關(guān)內(nèi)容,周日發(fā)布。
本周刊開源(GitHub:polaris1119/golangweekly[1]),歡迎投稿,推薦或自薦文章/軟件/資源等,請提交 issue[2] 。
鑒于一些人可能沒法堅(jiān)持把英文文章看完,因此,周刊中會(huì)盡可能推薦優(yōu)質(zhì)的中文文章。優(yōu)秀的英文文章,我們的 GCTT 組織會(huì)進(jìn)行翻譯。
由于微信公眾號不支持外鏈,文中大量鏈接可通過文末「閱讀原文」查看。

題圖:csvutil
刊首語
上期是一道關(guān)于 | 的題目,以下代碼輸出什么?
package?main
import?(
?"fmt"
)
func?main()?{
?var?a,?b?float64?=?1.0,?4.0
?fmt.Println(a?|?b)
}
A:5;B:+Inf;C:panic;D:不能編譯
正確答案是 D。
Go 語言中文網(wǎng)最近新增了一個(gè)功能:Go每日一題,每天一道 Go 題目及解析,可以每天一刷,訪問地址:https://studygolang.com/interview/question。
資訊
1、validator 尋找額外的維護(hù)者[3]
因?yàn)樾枨蠖啵髡哂X得自己一個(gè)人沒法花太多時(shí)間在這個(gè)項(xiàng)目,希望有其他人參與進(jìn)來。
2、GoReleaser 1.3 發(fā)布[4]
盡可能快速、輕松地交付 Go 二進(jìn)制文件。
3、go-github v42.0 發(fā)布[5]
GitHub v3 API 的 Go 客戶端。
文章
1、Go:服務(wù)怎么做到監(jiān)聽隨機(jī)端口
通常,服務(wù)一般會(huì)監(jiān)聽固定的端口。不過如果是本地測試服務(wù),也許有時(shí)候想隨機(jī)一個(gè)可用的端口。
2、Uber:大規(guī)模、半自動(dòng)化 Go GC 調(diào)優(yōu)
Uber 是國外大規(guī)模使用 Go 的公司之一,在 GitHub 上,他們開源了不少 Go 相關(guān)項(xiàng)目,本文介紹 Uber 如何在 30 個(gè)關(guān)鍵任務(wù)服務(wù)中節(jié)省 7 萬個(gè)內(nèi)核。
3、Typora 宣布收費(fèi)后,這款開源 Markdown 編輯器火了
喜歡 Typora 的可以付費(fèi)支持下。
4、GitHub 發(fā)現(xiàn)了 studygolang 項(xiàng)目依賴的漏洞
GitHub 這個(gè)功能挺好。
5、為 Java 開發(fā)者準(zhǔn)備的 Go 教程 02:Java 有而 Go 無
Go 語言的設(shè)計(jì)是站在巨人的肩膀上的,它吸取了其他語言的優(yōu)秀設(shè)計(jì),同時(shí)摒棄了一些「不認(rèn)可」的設(shè)計(jì)。
二進(jìn)制中包含的版本控制信息,這個(gè)挺好。
Go 圖書越來越多,有些不錯(cuò),有些不太好。我認(rèn)為如果你正在學(xué)習(xí) Go,你應(yīng)該盡可能廣泛地閱讀:即使是最好的 Go 圖書也只代表一種觀點(diǎn)。
開源項(xiàng)目
1、bintris[6]
Go 開發(fā)的手機(jī)游戲。

2、remark42[7]
注重隱式的輕量級、Go 實(shí)現(xiàn)的評論引擎,可以嵌入你的任何網(wǎng)站。
3、govcl[8]
跨平臺的 GUI 庫,國人實(shí)現(xiàn)。
4、toml[9]
使用反射實(shí)現(xiàn)的 toml 解析器。
5、mr-plow[10]
最小的內(nèi)存使用,云原生 logstash 的替代品。
6、asm[11]
提供優(yōu)化的算法庫,充分利用現(xiàn)代 CPU 的特性。
7、camellia[12]
一個(gè)輕量級的、持久的、分層的鍵值存儲(chǔ),用 Go 語言編寫。
8、ratelimit[13]
業(yè)務(wù)級訪客限流庫(非網(wǎng)關(guān)級如go.uber.org/ratelimit),作者自薦。
9、csvutil[14]
csvutil 提供了 CSV 和 Go 值之間的快速且慣用的映射。
資源&&工具
1、miller[15]
文本數(shù)據(jù)處理的瑞士軍刀,Go 實(shí)現(xiàn)。
2、mango[16]
為 Go flag、pflag 和 cobra 軟件包提供的 man page 生成器。
3、Go 播客第 212 期[17]
傳統(tǒng)工作之外的 Go 應(yīng)用。
4、gocap[18]
列出你的依賴能力,監(jiān)測依賴更新是否需要更多的能力。
5、helmify[19]
從 Kubernetes yaml 創(chuàng)建 Helm chart。
訂閱
這個(gè)周刊每周日發(fā)布,同步更新在Go語言中文網(wǎng)[20]和微信公眾號[21]。
微信搜索"Go語言中文網(wǎng)"或者掃描二維碼,即可訂閱。
參考資料
polaris1119/golangweekly: https://github.com/polaris1119/golangweekly
[2]提交 issue: https://github.com/polaris1119/golangweekly/issues
[3]validator 尋找額外的維護(hù)者: https://github.com/go-playground/validator/issues/874
[4]GoReleaser 1.3 發(fā)布: https://goreleaser.com/
[5]go-github v42.0 發(fā)布: https://github.com/google/go-github
[6]bintris: https://github.com/Lallassu/bintris
[7]remark42: https://github.com/umputun/remark42
[8]govcl: https://github.com/ying32/govcl
[9]toml: https://github.com/BurntSushi/toml
[10]mr-plow: https://github.com/Ringloop/mr-plow
[11]asm: https://github.com/segmentio/asm
[12]camellia: https://github.com/debevv/camellia
[13]ratelimit: https://github.com/yudeguang/ratelimit
[14]csvutil: https://github.com/jszwec/csvutil
[15]miller: https://github.com/johnkerl/miller
[16]mango: https://github.com/muesli/mango
[17]Go 播客第 212 期: https://changelog.com/gotime/212
[18]gocap: https://github.com/cugu/gocap
[19]helmify: https://github.com/arttor/helmify
[20]Go語言中文網(wǎng): https://studygolang.com/go/weekly
[21]微信公眾號: https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91
