Go语言爱好者周刊:第 128 期
共 2930字,需浏览 6分钟
·
2022-01-19 14:05
这里记录每周值得分享的 Go 语言相关内容,周日发布。
本周刊开源(GitHub:polaris1119/golangweekly[1]),欢迎投稿,推荐或自荐文章/软件/资源等,请提交 issue[2] 。
鉴于一些人可能没法坚持把英文文章看完,因此,周刊中会尽可能推荐优质的中文文章。优秀的英文文章,我们的 GCTT 组织会进行翻译。
由于微信公众号不支持外链,文中大量链接可通过文末「阅读原文」查看。
题图:csvutil
刊首语
上期是一道关于 |
的题目,以下代码输出什么?
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 语言中文网最近新增了一个功能:Go每日一题,每天一道 Go 题目及解析,可以每天一刷,访问地址:https://studygolang.com/interview/question。
资讯
1、validator 寻找额外的维护者[3]
因为需求多,作者觉得自己一个人没法花太多时间在这个项目,希望有其他人参与进来。
2、GoReleaser 1.3 发布[4]
尽可能快速、轻松地交付 Go 二进制文件。
3、go-github v42.0 发布[5]
GitHub v3 API 的 Go 客户端。
文章
通常,服务一般会监听固定的端口。不过如果是本地测试服务,也许有时候想随机一个可用的端口。
Uber 是国外大规模使用 Go 的公司之一,在 GitHub 上,他们开源了不少 Go 相关项目,本文介绍 Uber 如何在 30 个关键任务服务中节省 7 万个内核。
3、Typora 宣布收费后,这款开源 Markdown 编辑器火了
喜欢 Typora 的可以付费支持下。
4、GitHub 发现了 studygolang 项目依赖的漏洞
GitHub 这个功能挺好。
5、为 Java 开发者准备的 Go 教程 02:Java 有而 Go 无
Go 语言的设计是站在巨人的肩膀上的,它吸取了其他语言的优秀设计,同时摒弃了一些「不认可」的设计。
二进制中包含的版本控制信息,这个挺好。
Go 图书越来越多,有些不错,有些不太好。我认为如果你正在学习 Go,你应该尽可能广泛地阅读:即使是最好的 Go 图书也只代表一种观点。
开源项目
1、bintris[6]
Go 开发的手机游戏。
2、remark42[7]
注重隐式的轻量级、Go 实现的评论引擎,可以嵌入你的任何网站。
3、govcl[8]
跨平台的 GUI 库,国人实现。
4、toml[9]
使用反射实现的 toml 解析器。
5、mr-plow[10]
最小的内存使用,云原生 logstash 的替代品。
6、asm[11]
提供优化的算法库,充分利用现代 CPU 的特性。
7、camellia[12]
一个轻量级的、持久的、分层的键值存储,用 Go 语言编写。
8、ratelimit[13]
业务级访客限流库(非网关级如go.uber.org/ratelimit),作者自荐。
9、csvutil[14]
csvutil 提供了 CSV 和 Go 值之间的快速且惯用的映射。
资源&&工具
1、miller[15]
文本数据处理的瑞士军刀,Go 实现。
2、mango[16]
为 Go flag、pflag 和 cobra 软件包提供的 man page 生成器。
3、Go 播客第 212 期[17]
传统工作之外的 Go 应用。
4、gocap[18]
列出你的依赖能力,监测依赖更新是否需要更多的能力。
5、helmify[19]
从 Kubernetes yaml 创建 Helm chart。
订阅
这个周刊每周日发布,同步更新在Go语言中文网[20]和微信公众号[21]。
微信搜索"Go语言中文网"或者扫描二维码,即可订阅。
参考资料
polaris1119/golangweekly: https://github.com/polaris1119/golangweekly
[2]提交 issue: https://github.com/polaris1119/golangweekly/issues
[3]validator 寻找额外的维护者: https://github.com/go-playground/validator/issues/874
[4]GoReleaser 1.3 发布: https://goreleaser.com/
[5]go-github v42.0 发布: 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语言中文网: 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