京东6.18大促主会场领京享红包更优惠

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 9885|回复: 0

Go 语言 2018 调查报告发布

[复制链接]

15

主题

0

回帖

10

积分

新手上路

积分
10
发表于 2019-3-31 03:24:13 | 显示全部楼层 |阅读模式 来自 中国
开发四年只会写业务代码,分布式高并发都不会还做程序员? >>> Go 官方博客今天公布了 2018 年 Go 语言调查报告。参与本次调查的 5883 名受访者来自 103 个不同的国家,官方表示,这些受访者的反馈意见将被选取用于改进 Go 语言的发展。
" k% D0 \) v) z! t知道大家都很忙,先直接看一下调查报告摘要:, `, e9 ^( Q/ h/ Z$ Z

    ) X# {- x' S; N$ h2 B
  • 首次有一半的受访者表示 Go 是他们日常使用的编程语言之一。此外,在工作中用到 Go 语言以及在工作之余使用 Go 语言的受访者人数也显著增加。$ W6 X5 z- f4 ^6 b1 s
  • Go 最常见的用途仍然是编写 API/RPC 服务和 CLI 工具。虽然用于自动化任务领域不像前两者那么常见,但也处于快速发展阶段。' C: X2 h# Z3 d3 |4 ?% |
  • Web 开发仍然是受访者最普遍的工作领域。与此同时, DevOps 保持着年度最高的同比增长率,整体比例仅次于 Web 开发。
      D  m% j# S( e- t- U
  • 绝大多数受访者表示 Go 是他们最喜爱的编程语言,尽管熟练度不如其他语言高。& @" |3 p$ \8 [. h4 N9 x0 @2 _' h
  • VS Code 和 GoLand 越来越受开发者欢迎,两者都是他们最喜爱的编辑器。" U& X- e# Z/ w  ~
  • 许多 Go 开发者的主力开发系统不止一个 —— Linux 和 macOS 尤其受欢迎。大多数受访者表示使用这两者之一或全部来编写 Go 代码。: c8 x6 W* T" n2 X2 [
  • 受访者正在逐渐放弃在将 Go 应用程序部署到本地,转而选择容器和无服务器(serverless)的云部署。% ?# J" d' ~8 Y" [) y: ]; W: M& q& r
  • 大多数受访者对 Go 社区的氛围评价是友好,而且绝大部分改进 Go 社区的想法都是给新手提供更好的入门体验  Q) B1 i! f" N$ w: ^
调查报告的内容摘要如上,相关的具体数据以及细节请继续阅读(比较对象是 2016 和 2017 的调查数据)。
$ ?  X* a- K/ a, V8 L$ d- @开发背景7 V& l3 N8 E# ?: h+ z
: P9 @/ C7 l1 B, x5 P
本次的调查结果显示,在工作用 Go 语言开发的受访者人数显著增加(68%→72%),此外在工作之余使用 Go 语言的受访者人数也在不断增加(64%→70%)。将 Go 作为日常使用的编程语言之一的受访者数量比例更是首次达到 50%(2016 年为 44%)。通过这些数据我们不难发现,越来越多的公司开始接受使用 Go 进行核心业务开发,而且 Go 语言在开发者群体中也饱受欢迎。
4 J' Y* M: R8 t' f8 C' R- o- @7 b: [3 d; }+ l( i! E/ W
" j+ X0 @# F5 V" D
▲使用 Go 语言的场景
! B& @5 m$ j5 k& M( h8 B  \. h  Z( O# a1 M: ?

% k) e! g- F' ^▲使用 Go 语言的频率
( f% F) n. W, d$ G# _- C# i
+ v1 i0 X# d" p
. d- q3 y( O3 x$ L▲使用 Go 语言的时长+ ?- P* Y9 C% o
可以看到,受访者普遍都有 2 年以上的 Go 开发经验,且这个比例每年都保持增长,而 Go 新手的比例也在逐年下降(这里新手的定义为使用 Go 语言的时间是 12 个月以内)。所以这就间接表明在入门 Go 语言后,大多数开发者不会选择放弃。
" C. p' s, m8 Y: x- u, c1 ^2 z开发领域6 X! Y; K$ ^1 E
) h9 {5 C( E5 U' L! Q9 f/ m9 x
调查结果显示,绝大多数受访者(72%)在 2-5 个不同的开发领域工作。而 Web 开发是最常见的领域,高达 65%,占据主导地位。DevOps 的比例也从 36% 增加到 41%,位居第二名。而系统编程则以 39% 的比例次于 DevOps。
3 R' q" R4 G7 B* H- C( j7 B6 z
. d7 ^) R, o& }! k/ r/ _1 m
# b. b3 ?9 Y# R% {+ ^4 P▲受访者的工作领域自 2016 年以来,Go 的主要用途都是编写 API/RPC 服务和开发 CLI 应用程序。虽然 CLI 的比例在三年内一直稳定保持在 63%,但 API/RPC 已从 2016 年的 60% 增加到 2017 年的 65%,再到今天的 73%。在这些领域,Go 都发挥着自己的核心优势,这恰好也是云原生应用程序开发的核心。另一个同比增长的趋势表明,自动化任务也是 Go 在发力的一个领域,38% 的受访者使用 Go 编写脚本和自动化任务(2016 年的比例为 31%)。* W  ?1 V3 y: O) p! ~" v

9 E2 [9 v- H* O
8 I1 Z8 Z" _+ [+ K& y2 d  }5 F. [▲受访者使用 Go 语言的具体领域对 Go 语言的态度
& g1 X! y* d; |- P2 E. q! A
: q  U$ o/ }# N# A3 u本次调查增加了一个“你有多大可能将 Go 推荐给朋友或同事?”的问题,以此来计算净推荐值(Net Promoter Score, NPS)。最终 Go 在 2018 年调查中的净推荐值是 61 分(68% 的倡导者 - 7% 的贬低者)。
# U# |- F* L. h9 D, I( M; R) K3 @7 s& k6 I

; ]9 Q) U5 f1 O" n5 v  _8 t▲Go 的 NPS 分布情况除 NPS 之外,调查还包括其他几个关于开发者对 Go 满意度的问题。总体而言,受访者表示满意度很高,与前几年结果一致。大多数人表示他们对 Go 感到满意(89%),愿意将 Go 用于他们的下一个项目(85%),并且认为 Go 对团队有很大的价值(66%),同时也有不少人认为 Go 对公司的成功至关重要(44%)。
8 a8 G7 t! Q7 W. d( \' y% f2 ]" q! M另外,报告显示长期被 Go 使用者诟病的包管理和缺少泛型这两个问题,依然是很多开发者使用 Go 时所面临的最大挑战。
3 R  X' O3 m0 I! V开发环境2 [( {, v1 Y1 x: ^# |% Z* A1 c
; Y% X3 Y3 v4 |
问到受访者在哪个平台进行 Go 开发时,大多数受访者表示使用 Linux(65%),50% 表示使用 macOS,18% 使用 Windows,与去年结果基本一致,Linux 和 macOS 仍然是主导地位。总体而言,41% 的受访者使用多操作系统进行 Go 开发,这也体现了 Go 的跨平台特性。
$ M# O5 `& R: T  P- B; O8 Z& m$ n3 ~2 M9 e& s% A) R2 C+ k
: q7 ^+ ]; V/ t0 d2 O
▲进行 Go 开发的平台开发工具方面,VS Code 和 GoLand 分别在最受喜爱的 Go 编辑器排行榜上占据第一、二名,Vim 排名第三。对于编辑器最期待的功能是改进对调试的支持,包括实时调试和集成调试等,此外就是代码的自动补全可以更智能。其他的需求包括与 Go CLI 工具链更好的集成,对模块/包提供更好的支持,以及性能方面的改进。3 v+ q- E1 E: S" V% ~
2 D1 M+ H1 x# e, R; X' Q2 P2 ]
; B! g3 d" \6 @- `! N. Y) T4 d
▲最喜爱的 Go 编辑器部署和服务
" N$ f/ z- d' e4 f1 |* m4 P* j3 U+ ^5 c
2018 年,将 Go 应用程序部署到本地服务器的受访者比例从 43% 降至 32%,越来越多开发者选择将 Go 应用部署到云上,无服务器和容器也正在变成越来越流行的部署平台。1 W5 M0 M3 [( v  h; }! ?

$ p3 }% |0 W: G" y" E) S* J+ Z# c' ^. J4 n( D4 {9 Q, W0 ]% A. X
▲部署 Go 应用的平台Go 语言社区氛围
, r! m, ~9 R7 o( [$ {) d( V4 v4 u, i
维护社区的健康对开源项目的发展非常重要,所以在过去三年里 Go 团队一直在关注开发者在 Go 社区是否有得到足够的到关注和尊重。本次的调查结果显示,“我在 Go 社区中有被关注的感觉”这一说法的比例,从 66% 下降到了 59%。主要是 Go 新手得不到足够的回应,从而对社区产生了疏远感。被问到如何改进此问题时,官方整理的受访者回答大致可分为:
5 N7 \+ T% @* S4 h# o, t) a

    ) P. I. `- x( w9 f5 b& C* ^- n: ?* f
  • 老手不应有过分的优越感,特别是面对 Go 新手时(例如不要表现出“不屑一顾”、和“放下防备心和傲慢的态度”)- {, X; x4 _+ R
  • 加大领导层的透明度(例如“公开讨论未来方向和规划”、“减少自上而下的领导”、“更民主”)
    ( H  b: {2 v$ M! Q. `: v
  • 增加更多的介绍性资源(例如“面向贡献者提供更明确的介绍”、“最佳实践的有趣挑战”)2 p% S) m' S) Q4 N( X- l
  • 举办更多活动和聚会,重点是覆盖更广的地理区域; \& F) g- V/ I" P( }) |% T0 a

5 k8 ]) H6 ~! v1 q) P; c$ _6 K% o0 w  W0 r# \3 f% t/ U: D2 z
▲我在 Go 社区中是否有被关注的感觉最后; |5 Z* Z0 e( b8 o) ?) ]
) c" D) ]. X$ s8 C0 Q3 O; G
对 Go 语言 2018 调查报告的介绍到此为止,不知各位对 Go 语言的使用体验如何,有怎样的改进建议?不妨在留言区和我们分享一波~# l* x/ N. Q! ?. e* i+ h% i

/ r  J' z+ Y! ?  w$ r$ E& E) u9 k: s来源:http://www.yidianzixun.com/article/0Lc8PV3N; ?# u$ B! U; J$ ~5 w- h
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

帖子地址: 

梦想之都-俊月星空 优酷自频道欢迎您 http://i.youku.com/zhaojun917
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|梦想之都-俊月星空 ( 粤ICP备18056059号 )|网站地图

GMT+8, 2026-7-16 04:33 , Processed in 0.042471 second(s), 24 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表