Go语言爱好者周刊:第 74 期 — 不仔细你就会答错
共 4316字,需浏览 9分钟
·
2020-12-22 13:56
这里记录每周值得分享的 Go 语言相关内容,周日发布。
本周刊开源(GitHub:polaris1119/golangweekly[1]),欢迎投稿,推荐或自荐文章/软件/资源等,请提交 issue[2] 。
鉴于大部分人可能没法坚持把英文文章看完,因此,周刊中会尽可能推荐优质的中文文章。优秀的英文文章,我们的 GCTT 组织会进行翻译。
由于微信公众号不支持外链,文中大量链接可通过文末「阅读原文」查看。
题图:Go 对各种 CPU 架构的支持。
刊首语
这道题看起来很迷惑,目测很多人可能会答错。以下代码输出什么?
package main
import (
"encoding/json"
"fmt"
"time"
)
func main() {
t := struct {
time.Time
N int
}{
time.Date(2020, 12, 20, 0, 0, 0, 0, time.UTC),
5,
}
m, _ := json.Marshal(t)
fmt.Printf("%s", m)
}
注意:因为微信投票字数限制,选项 A 是{"Time": "2020-12-20T00:00:00Z", "N": 5 }
资讯
1、Go 1.16 Beta1 发布,支持 Apple M1 芯片
正式版预计 2021 年 2 月发布。欢迎测试反馈。
2、godoc.org 将重定向到 pkg.go.dev[3]
2021 年年初会生效。godoc.org 要关闭了,但有人对 pkg.go.dev 不满,弄了个 godocs.io。。。
3、gopls 0.6.0 发布[4]
VSCode 用户会自动更新。
4、Ebiten in 2020[5]
Ebiten 是一个流行的开源游戏库,用于在 Go 中构建 2D 游戏。这个项目竟然已经 7 年了。很棒!
5、fyne-cross 发布 1.0 版本[6]
这是 Go GUI 框架 fyne 的全平台打包发布工具。
6、Docker 发布支持 apple M1 芯片的 docker desktop 预览版[7]
跟进很快!
文章
上周六的聚会小结。
这是第 71 期周刊题目的解析。
signal 包提供了信号处理器,让我们的 Go 程序可以与发送来的信号进行交互。
4、新买了 Apple M1 Mac,却不知道如何安装 Go?
虽然 Go 1.16 Beta1 已经发布,但了解下源码编译相关知识还是有帮助的。
5、Go 错误处理:用 panic 取代 err != nil 的模式
虽然官方不推荐,但有人这么用。好不好自己清楚!
这是 pkg.go.dev 比官方网站强大的地方。
7、英雄联盟(LOL)所在公司竟然大量使用 Go 语言:这是他们的实战分享
游戏行业也在使用 Go。
这些题目你会多少?
你为命名发愁过吗?
10、跟 Dave Cheney 大神重学 Go Slice:有新收获
每次讨论到 Go 的切片问题,都会从这个变量是不是切片开始,换句话说,就是 Go 的序列类型,在 Go 中,数组有两种关联属性。
11、从 PHP 转 Go
一篇国外文章翻译版。写这篇文章的时候 PHP 最新版本是 PHP7.4,Go 的最新版本是 Go1.13。
12、「对比 Python 学习 Go」- 高级数据结构[8]
从 Python 转 Go 的可以看看。
开源项目
1、yomo[9]
开源的低时延边缘计算 Streaming Serverless Framework。
2、fastwego[10]
FastWeGo 是一组 Go 服务快速开发 sdk,支持微信公众号、小程序、小游戏、企业微信、微信支付等微信服务,以及 飞书、钉钉。「快」是核心特性,5 分钟即可完成一套 Go 服务开发。
3、panther[11]
使用日志数据检测威胁并改善云安全状况。
4、graphik[12]
作为身份识别文档和图形数据库实现的后端即服务(Backend as a Service),并支持 gRPC 和 graphQL。
5、frames[13]
基于 Golang 的远程数据帧访问(通过 gRPC 或 HTTP 流)。
6、chili[14]
Go 的简单表达式评估引擎。
资源&&工具
1、school-of-sre[15]
LinkedIn 在 GitHub 上开源了其企业内部的 SRE 技术课程,主要包含 Linux、Git、Python、Web、MySQL、大数据、系统设计、网络安全等内容。
2、imgdiff[16]
最快的逐像素图片比对工具。
3、Go 学习网站[17]
网络上最好的 Go 学习资源: 精选最佳文章,练习,课程,讲座和视频来学习 Go。不过是英文的。
4、油管视频[18]
为一个 Go 项目构建 pipeline。
5、criticalityscore[19]
该项目会评估一个开源项目的重要性并给出一个评估分数,打分算法来自 Rob Pike。Python 版本:https://github.com/ossf/criticality_score。
6、Google 面试最常问的 20 个问题[20]
很语言没太多关系。英文的。
7、专注于 Go 高性能编程实践的开源电子书项目[21]
极客兔兔出品,项目主页:Go 语言高性能编程[22]。
8、lazyssh[23]
跳转主机 SSH 服务器,可按需启动计算机。
9、doggo[24]
人类更可读的命令行 DNS 客户端。受 Rust 的 dog[25] 项目启发。
订阅
这个周刊每周日发布,同步更新在Go语言中文网[26]和微信公众号[27]。
微信搜索"Go语言中文网"或者扫描二维码,即可订阅。
上期推荐Go语言爱好者周刊:第 73 期
参考资料
polaris1119/golangweekly: https://github.com/polaris1119/golangweekly
[2]提交 issue: https://github.com/polaris1119/golangweekly/issues
[3]godoc.org 将重定向到 pkg.go.dev: https://docs.studygolang.com/blog/godoc.org-redirect
[4]3、gopls 0.6.0 发布: https://github.com/golang/tools/releases/tag/gopls%2Fv0.6.0
[5]Ebiten in 2020: https://ebiten.org/blog/2020.html
[6]fyne-cross 发布 1.0 版本: https://fyne.io/blog/2020/12/14/fyne-cross-v1-release.html
[7]Docker 发布支持 apple M1 芯片的 docker desktop 预览版: https://www.docker.com/blog/download-and-try-the-tech-preview-of-docker-desktop-for-m1/
[8]「对比 Python 学习 Go」- 高级数据结构: https://segmentfault.com/a/1190000038498305
[9]yomo: https://github.com/yomorun/yomo
[10]fastwego: https://fastwego.dev/
[11]panther: https://github.com/panther-labs/panther
[12]graphik: https://github.com/graphikDB/graphik
[13]frames: https://github.com/v3io/frames
[14]chili: https://github.com/5anthosh/chili
[15]school-of-sre: https://github.com/linkedin/school-of-sre
[16]imgdiff: https://github.com/n7olkachev/imgdiff
[17]Go 学习网站: https://golangresources.com/
[18]油管视频: https://youtu.be/AtiUf0uJ4YE
[19]criticalityscore: https://github.com/engelsjk/criticalityscore
[20]Google 面试最常问的 20 个问题: https://www.programming-hero.com/blog/20-most-frequently-asked-google-interview-questions.html
[21]专注于 Go 高性能编程实践的开源电子书项目: https://github.com/geektutu/high-performance-go
[22]Go 语言高性能编程: https://geektutu.com/post/high-performance-go.html
[23]lazyssh: https://github.com/stephank/lazyssh
[24]doggo: https://github.com/mr-karan/doggo
[25]dog: https://github.com/ogham/dog/
[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