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

題圖:gum
刊首語
上期的題目比較簡單,正確率也比較高。一起看看。
以下代碼輸出什么?
package main
import "fmt"
func main() {
const c = 8
a := &c
*a = 12
fmt.Println(*a)
}
A:8;B:不能編譯;C:12
正確答案:B。報的錯是:invalid operation: cannot take address of c (untyped int constant 8)。
看下本期題目。以下代碼輸出什么?
package main
import "fmt"
func main() {
a := []int{7, 8, 9}
fmt.Println(a[real(2)])
}
資訊
1、sqlite 1.18.0 發(fā)布[3]
一個自包含,無服務器,零配置的事務型 SQL 數(shù)據(jù)庫引擎的進程內(nèi)實現(xiàn)。
2、Go Micro 4.8 發(fā)布[4]
分布式系統(tǒng)框架。
3、sonic 1.3.4 發(fā)布[5]
字節(jié)開源的高性能 json 編解碼庫。
4、bud 0.2.3 發(fā)布[6]
一個全棧框架。
5、chromedp 0.8.3 發(fā)布[7]
驅(qū)動瀏覽器的 Go 語言庫,支持 Chrome DevTools 協(xié)議。抓取動態(tài)網(wǎng)頁利器。
6、milvus 2.1 發(fā)布[8]
一個開放源碼的矢量數(shù)據(jù)庫,用于嵌入相似性搜索和人工智能應用程序。
7、Buf 1.7 發(fā)布[9]
一種新的 Protobuf 處理庫。
8、fq 0.0.8 發(fā)布[10]
用于檢查二進制數(shù)據(jù)的工具、語言和解碼器,類似 jq。
9、imgproxy 3.7 發(fā)布[11]
一個 Go 語言寫的圖片代理網(wǎng)關,可以代理遠程圖片,并且提供格式轉(zhuǎn)換和大小縮放功能。
文章
1、Go 新版內(nèi)存模型[12]
Go 1.19 的這個改變是去年由 Russ Cox 在一篇文章[13]中首次提出的,對 Go 內(nèi)存模型的一些修改,使其與其他語言(例如C、C++ 和 Rust)更為一致,以及 sync/atomic 包中的一些新類型。
為泛型和 go.work 提供了更好、全面的支持,同時還添加了對模糊測試的支持。
一個很好玩的 Go 語言的 REPL(read-eval-print-loop)工具。
4、帶你徹底擊潰跳表原理及其Golang實現(xiàn)!(內(nèi)含圖解)
本文是基于我個人對跳表原理的深入探究,并通過golang實現(xiàn)了一個基礎跳表的理解和實踐。
本文介紹了 DES 加密原理和作用,和 golang 中 DES 加密解密機制的相應實現(xiàn)。
本文主要從基礎原理開始介紹,到一步一步步驟實現(xiàn),繼而完成整個簡單且優(yōu)雅的MySQL ORM。
7、如何使用 Elastic APM Go 代理為 Go 應用裝載測量工具
在本文中,我們將研究如何使用 Elastic APM 為 Go 應用程序裝載測量工具,以便捕獲詳細的響應時間性能數(shù)據(jù)(跟蹤)、捕獲基礎架構和應用程序指標,以及與日志集成 — 實現(xiàn)可觀察性三要素。
今天帶來一篇關于Go版本管理器 gvm 的小短文。
開源項目
1、hlive[14]
HLive 是一個基于服務器端 WebSocket 的動態(tài)無模板視圖層。
2、gin-rate-limit[15]
Gin 框架的 rate limit。
3、drafts[16]
Go 開發(fā) ebpf 程序的應用骨架。
資源&&工具
1、speedbump[17]
用于模擬可變網(wǎng)絡延遲的 TCP 代理。
2、gobackup[18]
用于將數(shù)據(jù)庫、文件備份到 FTP/SCP/S3 存儲的簡單工具。
3、Go Time 第 240 期[19]
Go1.19 包含哪些新特性?
4、gum[20]
一款用于制作迷人 shell 腳本的工具。
5、litefs[21]
Go 實現(xiàn)的 sqlite 復制工具。
訂閱
這個周刊每周日發(fā)布,同步更新在Go語言中文網(wǎng)[22]和微信公眾號[23]。
微信搜索"Go語言中文網(wǎng)"或者掃描二維碼,即可訂閱。
參考資料
polaris1119/golangweekly: https://github.com/polaris1119/golangweekly
[2]提交 issue: https://github.com/polaris1119/golangweekly/issues
[3]sqlite 1.18.0 發(fā)布: https://gitlab.com/cznic/sqlite
[4]Go Micro 4.8 發(fā)布: https://github.com/asim/go-micro
[5]sonic 1.3.4 發(fā)布: https://github.com/bytedance/sonic
[6]bud 0.2.3 發(fā)布: https://github.com/livebud/bud
[7]chromedp 0.8.3 發(fā)布: https://github.com/chromedp/chromedp
[8]milvus 2.1 發(fā)布: https://github.com/milvus-io/milvus
[9]Buf 1.7 發(fā)布: https://github.com/bufbuild/buf
[10]fq 0.0.8 發(fā)布: https://github.com/wader/fq
[11]imgproxy 3.7 發(fā)布: https://github.com/imgproxy/imgproxy
[12]Go 新版內(nèi)存模型: https://tip.golang.org/ref/mem
[13]在一篇文章: https://research.swtch.com/gomm
[14]hlive: https://github.com/SamHennessy/hlive
[15]gin-rate-limit: https://github.com/JGLTechnologies/gin-rate-limit
[16]drafts: https://github.com/rafaeldtinoco/drafts
[17]speedbump: https://github.com/kffl/speedbump
[18]gobackup: https://github.com/huacnlee/gobackup
[19]Go Time 第 240 期: https://changelog.com/gotime/240
[20]gum: https://github.com/charmbracelet/gum
[21]litefs: https://github.com/superfly/litefs
[22]Go語言中文網(wǎng): https://studygolang.com/go/weekly
[23]微信公眾號: https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91
