Go语言爱好者周刊:第 64 期
这里记录每周值得分享的 Go 语言相关内容,周日发布。
本周刊开源(GitHub:polaris1119/golangweekly),欢迎投稿,推荐或自荐文章/软件/资源等,请提交 issue 。
鉴于大部分人可能没法坚持把英文文章看完,因此,周刊中会尽可能推荐优质的中文文章。优秀的英文文章,我们的 GCTT 组织会进行翻译。
题图:来自 https://threedots.tech/post/basic-cqrs-in-go/
刊首语
前两天分享了一个安装和管理 Go 版本的工具 goup,其中存在的一些问题或需要增强的功能。其中,解决升级到最新版本不能访问的问题,现在可以通过配置如下环境变量实现:
$ GOUP_GO_HOST=golang.google.cn goup install
Go tip 源码改成了从 GitHub 获取,但 tip 的 CL 源还是 googlesource.com,因为 CL googlesource 的概念。
此外也增加了我提到的功能:
- goup ls-ver:列出所有的 Go 版本;
- goup show:显示安装了的 Go 信息;
$ goup show
| VERSION | ACTIVE |
|---------|--------|
| 1.10.8 | |
| 1.14.9 | |
| 1.15.2 | * |
| tip | |
- goup remove:删除某个 Go 版本;
资讯
1、增加 errors.ErrUnsupported 的提议被接受
增加这个的提议,是考虑到有时候一些操作对某些平台可能不支持。这时候可以返回这个错误。
默认包含在 Amazon Linux 2 (AL2) 中。AL2 用户可以使用 yum 软件包管理器安装 CloudWatch 代理。您还可以访问 CloudWatch 代理源代码并在 GitHub 中为其开发提供帮助。
Kafka 原生 ksqlDB 事件流数据库的客户端。
可以看 issue 的讨论,这个 issue 可是 2009 年提的。
一个带有注释的 TODO 注释的静态代码分析器。
文章
string 类型和 []byte 类型是我们编程时最常使用到的数据结构。本文将探讨两者之间的转换方式,通过分析它们之间的内在联系来拨开迷雾。
2、谷歌内部 Go 使用案例:核心数据解决方案团队是如何使用 Go 的?
在这个案例研究中,Google 的核心数据解决方案团队分享了他们的 Go 旅程,包括他们决定在 Go 中重写 web 索引服务,利用 Go 的内置并发性,并观察 Go 如何帮助改进开发过程。
在本教程中,我们将构建一个简单的 Go 包,您可以从 iOS 应用程序(Swift)和 Android 应用程序(Kotlin)运行该软件包。
今天推荐的这个开源项目,是一个 Disqus 的开源替代品。
这篇博客将解析 bufio 有关文件读写方面的源代码实现及其常用的方法。
一篇短文。
想真正做到上述所说的成熟且规范,业务共建,有难度,需要多方面认同和公司规范支撑才能最佳实现。因此共同认可,求同存异,多做用户反馈分析也非常重要。
goup 试试?
你认同吗?
一般而言,Golang 的 Functional 编程都会呈现出恶形。表面上看,恶形是因为 Golang 缺少一些必要的语法糖;本质上说,恶形源于它没有高级抽象能力,正如泛型的缺失。
调试加图的方式学习 channel。
cgo 的大量文档都提到过,它提供了四个用于转换 Go 和 C 类型的字符串的函数,都是通过复制数据来实现。
开源项目
1、mtproto
Telegram API 的 Go 实现。
2、gosoap
Go soap 操作包。
3、goconst
在 Go 中查找可以被常量替换的重复字符串。
4、gnomock
无需 mock 的 Go 代码测试框架。
5、sploit
一个帮助二进制分析和开发的库。
6、bbgo
用 Go 编写的加密货币交易框架。
一个强大的小型 TUI 框架。构建终端应用程序的有趣,实用和有状态的方式。一个基于 Elm 架构的 Go 框架。 Bubble Tea 非常适合于简单和复杂的终端应用程序,无论是嵌入式,全窗口或两者兼而有之。
8、go-zero
一个集成了各种工程实践的 web 和 rpc 框架。内置强大的goctl工具,极简API语法,一键生成微服务结构代码。
资源&&工具
1、bit
现代的 Git CLI 工具。试用了下,挺棒!给 Git 带来了一些额外的好东西,包括文件和分支名称自动完成、命令和标志建议,甚至一些新的命令。
2、Hetty
用于安全研究的 HTTP 工具包。具有 Web 接口和代理日志查看器的拦截 HTTP 代理。目标是成为像 Burp Suite Pro 这样的商业软件的开源替代品。
HAProxy 配置解析。
4、server
通过浏览器共享开发者屏幕。
5、glorp
一个可以进行 HTTP 截获与重放代理的 CLI 工具。
如何教授 Go 语言。
7、statsviz
在浏览器中实时查看 Go 应用程序运行时统计信息(GC,MemStats 等)。
8、gotp
一个命令行工具,用于获取,添加和删除 Google Authenticator 样式 2fa 代码。
为你的 kubectl 输出着色。
10、go-autowire
使用注解自动生成 wire 依赖注入文件。
订阅
微信搜索"Go语言中文网"或者扫描二维码,即可订阅。