2021 年最佳的后端编程语言会是谁?

Go语言精选

共 3968字,需浏览 8分钟

 ·

2020-08-26 13:09


点击上方蓝色“Go语言中文网”关注我们,领全套Go资料,每天学习 Go 语言

关注 NodeJS vs Python vs Go

作者:Mr Herath

原文链接:https://medium.com/better-programming/what-will-be-the-best-back-end-programming-language-for-2021-18096c0c6105

译者:polaris

注:以下 JavaScript 和 NodeJS 没有严格区分,因为谈后端,自然指 NodeJS。不过统计中,前端部分的 JS 应该占了很大一部分。

已经快 2020 年 9 月了,但是 2020 年的预测似乎还没有结束。在预测这样一个动态变化的行业的未来时,作为软件开发人员,要生存下去并非易事。从事软件的人们可能已经不知不觉地看到了许多技术的长生不老,因为在软件行业很难生存。

但是,如果回顾一下,编程语言拥有许多重要组成部分的悠久历史。C 和 Java 是最古老的两个,并且在业界仍然存在。但是,如果我们查看它们所处的位置或获得的知名度,我们可以它们正在下降。

作为开发人员,我爱上了 JavaScript,并且已经使用 JavaScript 已有一段时间了。但是,如果我们睁开眼睛看看开发人员世界,情况可能会稍有改变。让我们从 JavaScript,Python 和 Go[1] 中选择一门在 2021 年使用的语言。在讨论每种语言的优点之前,让我向您展示一些在线调查及其结果。


调查和其他数据

StackOverflow 调查

StackOverflow 的年度开发人员调查是对全球开人员的最大、最全面的调查。超过 90,000 个开发人员参加了此调查。我们可以看到 Python 领先,而 JavaScript 和 Go 分别位于第二和第三位。但是,等等?!这是在 2019 年进行的调查。作为一种快速增长的语言,Go 的受欢迎程度正在疯狂增加。我认为,统计数据可能会在 2020 年发生变化。

图 01:https://insights.stackoverflow.com/survey/2019

GitHub-GitHut 排名

下面的 GitHub 2.0 图显示了从 2013 年到 2019 年之间 Pull Request 的数量。从图中可以看出,JavaScript 在所有其他语言之上,而 Python 位居第二,但我们无法在图中看到 Go。

图 02:https://madnight.github.io/githut/#/pull_requests/2020/2

但是通过观察每种编程语言的排名,我们可以看到 Go 的流行度正在显着增加,而 JavaScript 和 Python 的流行度却在下降。

图 03:https://madnight.github.io/githut/#/pull_requests/2020/2

官方 GitHub 仓库

图 04:https://github.com/python/cpython


图 05:https://github.com/nodejs/node


图 06:https://github.com/golang/go

根据这些 GitHub 仓库,我们可以看到 Go 对开发人员的吸引力越来越高。Go 仓库的 Watch 和 Star 都更高,尽管与 JavaScript 和 Python 仓库相比,人们对 Go 的偏爱要小。


为什么选择 Python?

Python 是一种高级的动态类型编程语言,在 IT 行业中已经流行了很多年。根据许多调查,Python 被认为是过去十年中最受欢迎的语言。

Python 的优点

  • 使用 Python,您可以用更少的代码在更短的时间内解决复杂的问题。
  • Python 通过简单而强大的语法使许多复杂的事情变得非常容易。
  • 这是一种高级语言,因此您不必像使用 C++ 那样担心诸如内存管理之类的复杂任务。
  • 它是跨平台的,这意味着您可以在 Windows,Mac 和 Linux 上构建和运行 Python 应用程序。
  • 它有一个庞大的社区。每当您遇到困难时,都会有人帮助您。
  • 它具有大量的库,框架和工具。这意味着无论您想做什么,很可能其他人以前都做过,因为 Python 已经问世 20 多年了。

简而言之,Python 是一种多用途语言,具有简单,干净且对初学者友好的语法。所有这些都意味着 Python 很棒。从技术上讲,您使用 Python 所做的一切,也可以使用其他编程语言。但是 Python 的简单性和优雅性使其比其他编程语言有了更大的发展。这就是为什么它是雇主寻找的第一语言。无论您是程序员还是绝对的初学者,学习 Python 都会在 2021 年为您带来很多就业机会。实际上,一个 Python 开发人员的平均年薪高达 116,000 美元。(国内是这样吗?感觉悬)


为什么选择 JavaScript(Node.js)?

我个人很喜欢 Node.js,因为 Node.js 是我开始进行后端开发的语言。到目前为止,我已经谈论编程语言。但是在本节中,我想进一步谈谈 Node.js,它是最流行的 JavaScript 运行时环境之一。众所周知,Node.js 在 IT 行业中很受后端开发的欢迎。主要原因之一是 Node.js 基于 JavaScript。如果您是 JavaScript 开发人员,则可以轻松地成为全栈开发人员,这是了解 JavaScript 的另一项优势。

JavaScript 和 Node.js 的优点

  • 这是非阻塞的。因此,这意味着 Node.js 确实非常快。(非阻塞文件读写是服务器需要做的事情之一。但这是 Node.js 要做的事情。)
  • 前端和后端使用一种语言编写。
  • Uber,LinkedIn,Netflix 和 Facebook 等主要公司都在使用它。
  • 它是跨平台的。这意味着您可以在 Windows,Mac 和 Linux 上构建和运行 Node.js 应用程序。
  • 它有一个庞大的社区。(Gitter[2] 是我目前所在的社区之一。此外,您可以找到 Slack 频道和 StackOverflow 讨论。)
  • 它不是一个臃肿的框架。这意味着它是一种 Web 服务器技术,可以与 Node.js 所使用的不同框架一起使用,例如 Express,它是流行的 Node.js 框架之一。

再一次,我们可以看到 Node.js 还将成为在后端开发中使用的绝佳 JavaScrip t 环境。通过观察下图,我们可以看到在 2019–2020 年期间,JavaScript 用于后端和前端开发的比例相似。如果我们看一下 Node.js 在美国的开发人员的平均年薪,我们发现它的年薪在 48,000 美元到 130,000 美元之间。

图 07:https://nodejs.org/en/user-survey-report/


为什么选择 Go?

Go 是一种开放源代码编程语言,可轻松构建简单,可靠和高效的软件。它最初是在 2009 年发布的,但自那时以来,其流行度一直低于 Python 和 JavaScript。然而 Go 两次被评为年度编程语言。此外,Go 已成为 67.9% 的开发人员最喜欢的编程语言。显然,有一些原因使开发人员开始喜欢 Go。

图 08:https://insights.stackoverflow.com/survey/2019

Go 的优点

  • 高效。由于 Go 是一种类似于 C 的语言,因此您无需了解太多新的语法。
  • Go 也是一门跨平台语言。
  • 这是一门简单的语言。为什么?答案是它只有 25 个关键字和较少数量的数据结构(没有类,只有函数和类型)。
  • 这是一门可靠的语言。这是一门快速的语言。默认情况下,它支持并发,具有漂亮的模型并默认情况下处理可用于生产环境的服务器。
  • Go 不会经常更新。如果更新,则也不会特别重大更改,并且 Go 与旧版本 100% 兼容。
  • Go 现在是一门成熟的语言。(Go 具有内置的包管理器测试框架和并发模型。)

基于以上优点,我们可以看到 Go 也是一门很棒的语言。您可能想知道为什么要花这么多时间才能弄清这一点,为什么还没有开始使用 Go。在我这边,我也这么认为。如我们所见,大多数程序员都将 C 语 言作为他们的第一门编程语言来学习。如果您以这种方式开始学习和使用 Go,那么对您来说将毫不费力。

如果我们看一下 Go 开发者在美国的平均薪水,则为每年 45,000 美元 至 130,000 美元。


结论

如上所见,Go 在过去几年中做得很好。此外,根据调查,与 JavaScript 和 Python 相比,我们可以看到 Go 吸引了大量用户。当然,在接下来的几个月中,人气和资源将会增加。即使我开始使用 JavaScript,我还是选择 Go 作为 2021 年将要使用的最佳后端编程语言。

参考资料

[1]

Go: https://golang.org/

[2]

Gitter: https://gitter.im/nodejs/node



推荐阅读


学习交流 Go 语言,扫码回复「进群」即可


站长 polarisxu

自己的原创文章

不限于 Go 技术

职场和创业经验


Go语言中文网

每天为你

分享 Go 知识

Go爱好者值得关注


浏览 51
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报