Skip to content
On this page

Go语言爱好者周刊:第 102 期

这里记录每周值得分享的 Go 语言相关内容,周日发布。

本周刊开源(GitHub:polaris1119/golangweekly),欢迎投稿,推荐或自荐文章/软件/资源等,请提交 issue

鉴于一些人可能没法坚持把英文文章看完,因此,周刊中会尽可能推荐优质的中文文章。优秀的英文文章,我们的 GCTT 组织会进行翻译。

题图:GORM

刊首语

简单解释下上期的题目:

go
package main

var n = -99

func main() {
  m := make(map[string]int, n)
  println(m["Go"])
}

A:0;B:panic;C:不知道

答案是 A。48% 的人答对了。注意,从 map 获取数据,即使 map 是 nil,也不会 panic。通过 make 创建 map 时,第 2 个参数可以为负数,以下是等价的:

go
make(map[string]int, -99)
make(map[string]int, 0)
make(map[string]int)

具体可以参考:https://github.com/golang/go/issues/46909

本期是一道关于 channel 的题目:

go
package main

import (
	"fmt"
)

func main() {
	c := make(chan int)
	close(c)
	val, _ := <-c
	fmt.Println(val)
}

A:运行时死循环;B:0;C:编译不通过;D:不确定

资讯

1、cobra 1.2.0 发布

Cobra 是一个构建现代 CLI APP 的框架。

2、sso 3.0 发布

内部服务的 Go 单点登录方案。

3、copilot-go-experiments

github copilot 的 Go 编码实践。

4、惊呆了!Go 代码的第一次提交竟然是 1972 年。。。

Go Team 的彩蛋?

5、tinygo 0.19.0 发布

这是一个基于 LLVM 的、用于一些特定小场景的 Go 编译器,比如 WebAssembly、Microcontrollers 和 命令行工具等。在周刊的第 1 期推荐过。这次版本主要提升了反射性能、扩展和提升调度器性能等。

6、GoLand 2021.2 EAP Build #6 发布

新增 “保存和清理的欢迎” 界面上的 “新设置” 菜单。

7、Ultimate Go Notebook 发布

这本书之前介绍过。现在可以购买。

谁在招 Gopher

整理近期的 Go 职位。有招聘需求可以到「Go招聘」发布!

1、Aibee开放大量Golang职位,快来和小姐姐做同事喽!

2、【北京|深圳-腾讯微视】短视频Top企业招聘Gopher

3、回响科技招聘 | 潮玩社区由你来打造

文章

1、推荐三个Go实战开源项目

新手练习项目。

2、在 Golang 中使用 -w 和 -s 标志

本文致力于说明在 Go 中实现 -w 和 -s 标志的效果,并提供可以更有效地使用它们的方法。

3、深入 Go Module 之讨厌的 v2

Go module不但遵循语义化版本规范 2.0.0,而且还更进一步,对语义化版本中的major还还赋予了更深的意义。

4、在 Go 中编写令人愉快的 HTTP 中间件

在使用 Go 编写复杂的服务时,您将遇到一个典型的主题是中间件。

5、Go中的error居然可以这样封装

本文我们将探讨如何封装Go的error类型以在应用程序中带来更大的价值。

6、这本 Go 新书挺期待的

明年出版。

7、知乎热议:java太卷了,要不要转go啊?

真的卷的飞起。

8、Go 字符串中的潜在问题

什么问题呢?

9、通过实例理解Go Execution Tracer

采样工具(Sampling tools)采用一个测量的子集来描绘目标的粗略情况;这也被称为创建一个profile或profiling(剖析)。

开源项目

1、kubewebhook

创建 Kubernetes mutating 和 validating 网络钩子的 Go 框架。

2、horahora

Niconico, Bilibili 和 Youtube 的自托管视频托管网站和视频档案管理器。

3、riot

开源,分布式,简单高效的全文搜索引擎。

4、kazaam

JSON 的任意变换。

资源&&工具

1、fibratus

Windows 内核勘探和追踪的现代工具。

2、alda

用于音乐创作的基于文本的编程语言。

3、spotify-cli

Spotify 终端客户端。

4、coronaqr

用于欧盟数字 Covid 证书(EUDCC)QR 码数据的 Go 解码器。

5、播客第 186 期

通过 pop quiz 来学习 Go。

6、x-stock

财报分析,股票检测,基本面选股,基金检测,基金筛选,Go 实现。

7、json-to-go

用 vue3 开发的一个 json 转 Go 结构体工具网站。

8、go-strip

消除 Go 的编译特征。

订阅

这个周刊每周日发布,同步更新在Go语言中文网微信公众号

微信搜索"Go语言中文网"或者扫描二维码,即可订阅。

wechat

Released under the MIT License.