转眼 2020 年已经过去了 8 个月,但对 2020 年的预测似乎并未结束。对于软件开发从业者来说,这个行业时刻发生着变化,很多技能出现然后又消失,退场速度甚至远超人们的想象。
但如果我们回头看一下,关于编程语言的变化趋势仍然值得探讨。C 和 Java 算是行业中最古老的两门语言,目前仍然在行业中占据一席之地。不过我们也能发现,它们的受欢迎程度呈现一个曲线下降的趋势。
作为一名开发者,Mr Herath 最喜欢的语言是 JavaScript。在一篇 Medium 文章中,他为我们分析了 2021 年可能最受欢迎的几种编程语言。
JavaScript、Python 或者 Go?在讨论每种语言的优点之前,先看一些在线调查的结果。
调查结果说明了一切
1. Stack Overflow 调查
Stack Overflow 每年的开发者调查是全球规模最大、范围最全面的调查之一。2019 年的统计获得了全球近 9 万名开发者的数据。在最想使用编程语言的榜单中,Python 领先地位明显,JavaScript 和 Go 语言分列二三位。
图源:https://insights.stackoverflow.com/survey/2019
正如 PyTorch 急速取代 TensorFlow 的位置一样,编程语言的流行趋势变化也很快。
Go 语言的受欢迎程度正在快速上升,根据 Stack Overflow 2020 年度开发者报告的数据显示,在开发者最想使用的榜单中,虽然 Go 语言依然排在 Python 和 Javascript 后面,但比例较 2019 年有所上升。
图源:https://insights.stackoverflow.com/survey/2020
GitHub 趋势
GitHut 2.0 图表向我们展示了自 2013 年到 2019 年之间,不同编程语言的合并请求数量变化趋势。正如你所见,有关 JavaScript 的比其他所有语言都多,Python 排名第二,但 Go 语言的节奏根本看不出来。
图源:https://madnight.github.io/githut/#/pull_requests/2020/2
但观察每种编程语言的排名,我们可以看到 Go 的受欢迎程度正在显著提升,而 JavaScript 和 Python 的受欢迎程度正在下降。
图源:https://madnight.github.io/githut/#/pull_requests/2020/2
GitHub 库数量
图源:https://github.com/python/cpython
图源:https://github.com/nodejs/node
图源:https://github.com/golang/go
如以上图片所示,可以发现 Go 对开发者的吸引力越来越高。尽管它的使用人数肯定不如其他两种语言多,但从阅读数量和 Star 量上看都是更高的。
那么问题来了,为什么越来越多的开发者都在使用 GO 语言?
Go 语言的优势
Go 语言是一种开源编程语言,它有助于开发者轻松地构建简洁、可信赖和高效的软件。2007 年,罗伯特 · 格瑞史莫、罗勃 · 派克和肯 · 汤普逊开始设计 Go 语言,并于 2009 年正式推出开源,这门语言的历史只有短短十几年,很长时间内它一直没有获得像 Python 和 JavaScript 那样的关注度。
近年来,Go 语言的热度日益上升,也曾两度被评为年度编程语言。根据 Stack Overflow 2019 年度开发者调查报告的数据显示,在近 9 万名受访开发者中,有 67.9% 的人将 Go 语言作为他们最喜爱的编程语言之一。
图源:https://insights.stackoverflow.com/survey/2019
Go 语言自身具有的优势是受开发者喜爱的一大原因。以下是 Go 语言的一些显著优势:
- 效率高:Go 语言与 C 语言类似,开发者不需要掌握新的语法;
- 可以实现跨平台运行;
- 简单:Go 语言仅有 25 个关键词以及较少的数据结构(没有类别之分,只有函数和类型);
- 可信赖:Go 语言运行快,默认支持并行机制,模型漂亮,并且默认处理生产服务器(production-ready server);
- 更新不频繁:Go 语言即使更新,也不会出现重大的变动,并且 100% 兼容旧版本;
最后,Go 语言已经非常成熟了,它拥有内置包管理器测试框架和并行模型。
薪酬也是反映编程语言是否受欢迎的指标之一,同样根据 Stack Overflow 2019 年度开发者调查报告的数据显示,在哪种编程语言能够获得较高薪酬的排名中,Go 语言排名第三,而 Python 和 JavaScript 的排名就落后了很多。由此也反映出了 Go 语言的「钱途」。
图源:https://insights.stackoverflow.com/survey/2019
所以明年该用哪个语言?
正如我们所见,Go 语言在过去几年里表现很好。在每个编程语言的调查中,我们都能看到除了 JavaScript 和 Python 之外,Go 吸引了大量用户。可以预见的是,在接下来的几个月里,这门语言的人气和资源会不断增加。所以虽然人人都在用 JavaScript,但我认为 Go 语言将会是 2021 年最好的后端编程语言。
原文链接:
https://medium.com/better-programming/what-will-be-the-best-back-end-programming-language-for-2021-18096c0c6105
【本文是51CTO专栏机构“机器之心”的原创译文,微信公众号“机器之心( id: almosthuman2014)”】