这里记录每周值得分享的 Go 语言相关内容,周日发布。本周刊开源(GitHub:polaris1119/golangweekly),欢迎投稿,推荐或自荐文章/软件/资源等,请提交 issue 。
鉴于一些人可能没法坚持把英文文章看完,因此,周刊中会尽可能推荐优质的中文文章。优秀的英文文章,我们的 GCTT 组织会进行翻译。
题图:来自 golangweekly
先看看上期的题目。以下代码输什么?
package main
import (
"fmt"
)
func main() {
var nums1 []interface{}
nums2 := []int{1, 3, 4}
nums3 := append(nums1, nums2)
fmt.Println(len(nums3))
}
A:3;B:1;C:4;D:编译失败
正确答案是 B,即长度是 1。正确率只有 37%。先不说具体原因,本期将这道题稍微改一下,看看有多少人能做对。
以下代码输出什么?
package main
import (
"fmt"
)
func main() {
var nums1 []interface{}
nums2 := []int{1, 3, 4}
nums3 := append(nums1, nums2...)
fmt.Println(len(nums3))
}
A:3;B:1;C:4;D:编译失败
Go 官方发布了 Go1.18.3 和 Go1.17.11,这是两个小版本,主要涉及 4 个安全问题修复。
这里提供了泛型更新、更改字体大小的键盘快捷键,以及导入多个 CSV 文件的选项。
1、用Go重写Node.js服务:项目性能提升5倍,内存减少40%
在使用 Golang 进行重写后,其可处理的服务请求数增加了 5 倍,同时内存消耗减半。
今天为大家推荐 2022 年最好的 Go 包。
墙上时钟与单调时钟。
4、从项目的一个 panic 说起:Go 中 Sync 包的分析应用
项目开发中遇到一个错误 “fatal error: concurrent map read and map write”。
避免在循环中造成不必要的数组空指针检查。
JSON 是项目中不可避免的。
介绍一下 httptrace 和问题的定位过程。
面经。
1、zinc
轻量级的 elasticsearch 替代者。
类似于 Ruby-on Rails 用于 Go 的测试,针对真实数据库编写测试。
3、tarmac
使用 Web Assembly 构建分布式服务的框架。
4、Uniqush
开源移动应用通知推送服务。
一个更好的 gRPC。
6、Tigris
一个现代的、可扩展的用于构建实时网站和应用程序的后端。
7、mo
基于 Go 泛型实现的 monad 和函数编程抽象。
在持久性引擎之间同步数据,如 ETL。
Berlin 转型为 Go 的过程。
通过代码和详细的文档全面了解 WebRTC 及其协议的实际运行情况。
4、jid
通过使用 jq之 类的过滤查询以交互方式深入 JSON。
微信搜索"Go语言中文网"或者扫描二维码,即可订阅。