Go语言爱好者周刊:第 90 期
这里记录每周值得分享的 Go 语言相关内容,周日发布。
本周刊开源(GitHub:polaris1119/golangweekly[1]),欢迎投稿,推荐或自荐文章/软件/资源等,请提交 issue[2] 。
鉴于一些人可能没法坚持把英文文章看完,因此,周刊中会尽可能推荐优质的中文文章。优秀的英文文章,我们的 GCTT 组织会进行翻译。
由于微信公众号不支持外链,文章大量链接可通过文末「阅读原文」查看。
题图:pterm
刊首语
以下代码输出什么?
package main
import "fmt"
func app() func(string) string {
t := "Hi"
c := func(b string) string {
t = t + " " + b
return t
}
return c
}
func main() {
a := app()
b := app()
a("go")
fmt.Println(b("All"))
}
谁在招 Gopher
整理近期的 Go 职位。有招聘需求可以到「Go招聘」发布!
资讯
1、tidb 5.0 发布[3]
这是大版本发布。
2、MacDriver 0.1 发布[4]
用于使用 Apple/Mac API 和 Frameworks 的工具包。
3、RxGo 2.5.0 发布[5]
如果你熟悉 JavaScript 世界的 RxJS,那对这个应该也不会陌生。
4、ldap 3.3.0 发布[6]
基本 LDAP v3 功能实现。
5、Kubernetes 1.21 发布[7]
主题:Power to the Community。
有些特性还不错。
文章
很多团队都很兴奋地开始使用 Kubernetes。使用 Kubernetes 有好处也有坏处。
Go 语言相关面试题和答案汇总。
有一道题引出相关知识点。
4、Go:使用 Ebiten 在 2D 视频游戏中进行图像渲染
本文基于 Ebiten 1.10。
作为 Golang 开发者,遇到的许多问题之一就是尝试将函数的参数设置成可选项。这是一个十分常见的场景,您可以使用一些已经设置默认配置和开箱即用的对象,同时您也可以使用一些更为详细的配置。
fmt 包。
7、像大神一样调试 Go[8]
一旦你了解了基础知识,Golang 可以让你比以前更有效率。
开源项目
1、pterm[9]
一个现代的 Go 模块,用于美化控制台输出。看起来真的很漂亮。
2、Spaghetti[10]
包依赖分析工具。
3、lipgloss[11]
漂亮的终端布局的风格定义。
4、twodeeparticles[12]
用于 Go 的发动机无关的 2D 粒子系统模拟器。
5、vald[13]
高度可扩展的分布式矢量搜索引擎。
6、xsel[14]
兼容 XPath 1.0 的 Go 包。
7、Teleport[15]
一种身份识别、支持多协议的访问代理。
8、teams-api[16]
非官方 microsoft team go api 包。
9、go-gitlab[17]
与 gitlab 交互的 go client api。
10、keto[18]
谷歌全球一致性授权系统的开源 Go 实现。
资源&&工具
1、gographs.io[19]
图形化展示 Go 包依赖关系。
2、docuowl[20]
Go 实现的文档生成工具。
3、photon[21]
Go 实现的 rss 阅读工具。
4、jennifer[22]
Go 代码生成器。
5、garble[23]
Go 构建混淆工具。
6、gostackparse[24]
datadog 开源的 go stack 输出解析工具。
7、Go 播客第 174 期[25]
Go 中测试的磨难。
订阅
这个周刊每周日发布,同步更新在Go语言中文网[26]和微信公众号[27]。
微信搜索"Go语言中文网"或者扫描二维码,即可订阅。
参考资料
polaris1119/golangweekly: https://github.com/polaris1119/golangweekly
[2]提交 issue: https://github.com/polaris1119/golangweekly/issues
[3]tidb 5.0 发布: https://github.com/pingcap/tidb/releases/tag/v5.0.0
[4]MacDriver 0.1 发布: https://github.com/progrium/macdriver
[5]RxGo 2.5.0 发布: https://github.com/ReactiveX/RxGo
[6]ldap 3.3.0 发布: https://github.com/go-ldap/ldap
[7]Kubernetes 1.21 发布: https://kubernetes.io/blog/2021/04/08/kubernetes-1-21-release-announcement/
[8]像大神一样调试 Go: https://juejin.cn/post/6947868469270577159
[9]pterm: https://github.com/pterm/pterm
[10]Spaghetti: https://github.com/adonovan/spaghetti
[11]lipgloss: https://github.com/charmbracelet/lipgloss
[12]twodeeparticles: https://github.com/blizzy78/twodeeparticles
[13]vald: https://github.com/vdaas/vald
[14]xsel: https://github.com/ChrisTrenkamp/xsel
[15]Teleport: https://github.com/gravitational/teleport
[16]teams-api: https://github.com/fossteams/teams-api
[17]go-gitlab: https://github.com/xanzy/go-gitlab
[18]keto: https://github.com/ory/keto
[19]gographs.io: https://gographs.io/
[20]docuowl: https://github.com/docuowl/docuowl
[21]photon: https://gitlab.com/microo8/photon
[22]jennifer: https://github.com/dave/jennifer
[23]garble: https://github.com/burrowers/garble
[24]gostackparse: https://github.com/DataDog/gostackparse
[25]Go 播客第 174 期: https://changelog.com/gotime/174
[26]Go语言中文网: https://studygolang.com/go/weekly
[27]微信公众号: https://weixin.sogou.com/weixin?query=Go%E8%AF%AD%E8%A8%80%E4%B8%AD%E6%96%87%E7%BD%91