Go语言爱好者周刊:第 123 期
这里记录每周值得分享的 Go 语言相关内容,周日发布。
本周刊开源(GitHub:polaris1119/golangweekly),欢迎投稿,推荐或自荐文章/软件/资源等,请提交 issue 。
鉴于一些人可能没法坚持把英文文章看完,因此,周刊中会尽可能推荐优质的中文文章。优秀的英文文章,我们的 GCTT 组织会进行翻译。
题图:GopherCon 2021
刊首语
上期是一道关于 array 的题目,答题正确率 51%。
package main
import (
"fmt"
)
func main() {
v := [...]int{1: 2, 3: 4}
fmt.Println(len(v))
}
A:2;B:编译失败;C:3;D:4
正确答案是 D。要注意,除了 map,array(slice) 初始化时也是可以指定索引的。该题有一个索引 3,根据数组的特点,必然有小于 3 的所有也存在,上题中,v 的值是:[0, 2, 0, 4]。
本期是一道小题目:
package main
import "fmt"
func main() {
var i float64 = 3 / 2
fmt.Print(i)
}
A:1;B:1.5;C:编译错误;D:1.49
资讯
1、Go 1.17.5 和 Go 1.16.12 发布:安全更新
主要包含两个安全问题修复:net/http 和 syscall。
go.dev/play 支持 tip 了。
一个高性能、轻量级、非阻塞的事件驱动 Go 网络框架。
文章
有许许多多可以组织项目的方式。
竞态条件如何处理?
3、Go:通过 io.Writer 将 JPEG 转为 JFIF
Go 的标准库可让你对 JPEG 图像进行编码,但如何转为 JFIF。
zip 文件很常见,通过该文可以更好的了解该格式文件。
5、Go 在 Google:服务于软件工程的语言设计(翻译)
Rob Pike在 2012 年 SPLASH 2012 会议上发表的演讲的修订文章。
本文介绍用于 map 相关操作的包,目前放在 golang.org/x/exp 包下。
开源项目
1、oto
支持多平台的播放声音的低级库。
2、id3v2
用于 Go 的 ID3 解码和编码库。
3、flac
flac 包提供对 flac(免费无损音频编解码器)流的访问。
4、at
用于创建 trade 机器人的 Go 框架。
资源&&工具
Docker 支持的 PDF 文件无状态 API,https://gotenberg.dev/。
2、plumber
瑞士军刀 CLI 工具,用于与 Kafka、RabbitMQ 和其他消息传递系统交互。
Go 教育资源速查表。
两天视频,这是第二天的:https://www.youtube.com/watch?v=Gcp2ACyCadA。
5、imagor
用 Go 和 libvips 编写的高性能图像处理服务器。
订阅
微信搜索"Go语言中文网"或者扫描二维码,即可订阅。