Go

分享:

这些问题仅向选择 Go 作为其三种主要编程语言之一的受访者显示。

您如何使用 Go?

您是否同时使用多个版本的 Go?

去年以来,同时使用多个 Go 版本的开发者数量有所增加。

您是否同时编辑多个 Go 项目?

只有大约三分之一的 Go 开发者一次处理一个项目,其余开发者均同时处理多个项目。

您使用哪种模板引擎进行 Go 开发?

您经常使用哪种(哪些)软件包管理器?

Go Modules 仍然是最受欢迎的软件包管理器,其他部分软件包管理器(例如 godep 和 dep)的人气有所下降。

您是否使用 gopls?

仅当受访者对“您最常使用哪款 IDE/编辑器进行 Go 开发?”选择“Visual Studio Code”、“Vim”、“Sublime Text”时,才会向其提出此问题。

您对 gopls 体验的总体满意度如何?

仅当受访者对“您是否使用 gopls?”选择“是”时,才会向其提出此问题。

您在单个项目中将哪种(哪些)语言与 Go 一起使用?

Go 开发者在单个项目中最常将 JavaScript、Python 和 TypeScript 作为与 Go 一起使用的语言。同时,15% 的受访者专门使用 Go 开发项目,不使用其他语言。

框架和标准库

您使用什么类型的 Go 模块代理?

使用私有 Go 模块代理的 Go 开发者数量有所增加。

您在项目中是否使用 vendoring?

在 Go 项目中使用 vendoring 的受访者比例正在变得越来越小,从事 Go 模块项目的人除外。在后一种情况下,有更多开发者正在使用 vendoring。

您经常使用哪种 Go 路由器?

标准库是使用最广泛的 Go 路由器,并且人气仍在上升。在其他 Go 路由器中,gorilla/mux 的人气有所下降。

您经常使用哪种(哪些)测试框架?

大约五分之一的 Go 开发者不为 Go 编写单元测试。另外 17% 编写单元测试,但不使用框架。

您的项目中有多少个外部依赖项?

您在 IDE/编辑器中使用的代码库有多大?

Go 开发者的项目不是很大。在刚刚过半的 Go 开发者中,它们包含最多 100 个文件。

您将 Go 模块项目置于 GOPATH 内部还是外部?

您是否计划在未来 12 个月内将项目迁移到 Go 模块?

该问题仅向回答“您经常使用哪种(哪些)软件包管理器?”时没有选择“Go Modules”的受访者显示。

与去年相比,打算在未来 12 个月内迁移到 Go 模块的 Go 开发者有所减少。这个软件包管理器非常受欢迎,但其增长可能正在达到极限。计划继续使用其他软件包管理器的开发者数量正在增长。

您经常使用哪种(哪些)构建系统?

该问题仅向回答“您经常使用哪种(哪些)软件包管理器?”时选择“Go Modules”的受访者显示。

感谢您的参与!

我们真诚地希望您能发现我们的报告有用。与您的朋友和同事分享这份报告。

如果您有任何疑问或建议,请发送电子邮件至 surveys@jetbrains.com