这个工具真好:看看你的Go项目依赖有无漏洞

大家好,我是 polarisxu。 发现了一个好工具,推荐给大家! https://deps.dev/,这是 Google 新出的一个实验性工具,命名为:Open Source Insights,它能让你更了解你的项目依赖。 通过这个网站,你可以查询任意开源项目的依赖情况,还包括依赖的依赖,可以看到完整的依赖关系图,而且可以看到它们的许可证。 目前该工具支持 Go Modules、NPM package

网友很强大,发现了Go并发下载的Bug

大家好,我是 polarisxu。 前几天我写了一篇文章:Go项目实战:一步步构建一个并发文件下载器 ,有小伙伴评论问,请求 https://studygolang.com/dl/golang/go1.16.5.src.tar.gz 为什么没有返回 Accept-Ranges。在写那篇文章时,我也试了,确实没有返回,因此我以为它不支持。 但有一个小伙伴很认真,他改用 GET 方法请求这个地址,结果却有 Accept-Ranges,于是就很困惑,问我什么原因。经过一顿操作猛如虎,终于知

Rust 劝退系列 09:函数

大家好,我是站长 polarisxu。 这是 Rust 劝退系列的第 9 个教程,探讨 Rust 中的函数。 Rust 是支持函数式编程的语言。Rust 中,函数作为一等公民,本身就是一种类型。函数类型变量可以作为其他函数的参数或返回值,也可以赋值给别的变量,还可以直接调用执行。 01 函数定义 在 Rust 中,函数使用 fn 关键字定义(Go 中使用 func,想着够省略了,没想到 Rust 来个更省略!)。 和大部分其他语言的语法

Go项目实战:一步步构建一个并发文件下载器

大家好,我是 polarisxu。 今天为大家带来一个实战项目。建议你一定要动手实践。 在往下看之前,你不妨思考下,用 Go 如何实现一个并发下载器。(我之前有推荐过一个类似的开源项目:推荐三个Go实战开源项目 ) 01 原理 对于服务器上的某个文件,我们要并发下载到本地,很容易想到,应该将文件分成多个部分,然后开多个 goroutine 并发地去下载,最后将这多个部分合并成一个文件,实现并发下载的

这本 Go 新书挺期待的:100 个常见错误

大家好,我是 polarisxu。 Go 虽然简单,但一样会有很多容易犯的错误。网上也有不少总结的 Go 常见错误。 Teiva Harsanyi 在 2019 年发表过一篇文章:《The Top 10 Most Common Mistakes I’ve Seen in Go Projects》 (这里有中文版:https://tomotoes.com/blog/the-top-10-most-common-mistakes-ive-seen-in-go-projects/)

Go 启用新的官方问答社区

大家好,我是 polarisxu。 Go 官方宣布,在 StackOverflow 上启用新的问答社区,而这之前,官方的主要在 Google Groups。先简单介绍下 StackOverflow 的 Collective 。 01 Collective 是什么? 我们知道 StackOverflow 是一个问答社区,针对某一个类问题,一般通过 Tag 的形式汇集,比如 Go 语言的:https://stackoverflow.com/questions/tagged/go。而 Collective 是 StackOverflow 推出的,专门用于为你喜欢的技术构建一个社区

这是要干嘛?!微软招 Go 编译器全职开发人员

大家好,我是 polarisxu。 微软在其招聘主页上挂了一个招聘信息,招聘高级软件工程师(职位链接:https://careers.microsoft.com/us/en/job/1038385/Senior-Software-Engineer)。这个职位有点特别: 个人贡献者。具体来说,找为 Go 语言编译器和工具开发的全职员工。 我们都知道,一直以来,微软搞了不少开

Go1.17 快报之标准库越来越注重易用性

大家好,我是 polarisxu。 说起 Go 的优点,很多人会提到 Go 拥有强大的标准库,比如开发一个 HTTP 服务,几行代码就搞定。不过,如果是一个 PHPer 转到 Go,又会觉得 Go 标准库不够便利,很多东西都需要自己二次封装。这其实是一个取舍的问题。 Go 官方也在不断完善、优化标准库,在坚持一定原则的基础上,尽可能让标准库好用、易用。今天就看看 Go1.17 中,官方在这方面做了哪些改进。 01 time 包 Unix 时间戳,

Go1.17 新特性之切片变数组

大家好,我是 polarisxu。 按计划,Go 1.17 会在 2021 年 8 月份发布(目前已经发布了 Beta1 版本)。目前,1.17 相关的功能已经开发差不多了,上次介绍了测试顺序随机的问题,今天介绍 1.17 中的另一个新功能:切片显式地转换成数组指针。 温馨提示,如果要试验该功能,需要升级到 1.17 Beta1 版本。另外一个主意事项就是如果在有 go.mod 的目录中试验,确保其中的版本改为 1.17,否则会报错:conver

回顾 Go 官网的演变史

大家好,我是 polarisxu。 最近 618,阿里云等云厂商都在促销,我之前有一台服务器在华为云,正好要过期了,发现续费要 2500 左右。而阿里云新客买一台服务器,3 年才 179.9(1 核 2 G),用来镜像一个 Go 官网还是绰绰有余的。因为很早就镜像过 Go 官网,这次发现官网搭建又有了很大变化,因此决定回顾下 Go 官网的演变。 新人常年有优惠,比如 99 元/年。有兴趣的可以购买:https