前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >2021年编程语言趋势预测:Python和JavaScript仍火热,Go不可小觑

2021年编程语言趋势预测:Python和JavaScript仍火热,Go不可小觑

作者头像
学一学大数据
发布2020-09-25 11:37:24
9410
发布2020-09-25 11:37:24
举报
本文为大家分析了 2021 年编程语言趋势。

Tensorflow和Pytorch到底该用哪个呢?

“import tensorflow as pytorch!”

编程语言及框架似乎总是被人拿来比较,这里我们只谈语言。

作为开发人员,在当今这个技术更迭飞快的时代要连年吃香并非易事,很多十年开发经验以上的开发人员不知道经历了多少语言的变化,今年还在用C语言,下一年就是D了。

“PHP是世界上最好的编程语言”已被人忘却,但“青春饭”和35岁“金龙跃鱼门”的传说确真实发生。

在预测这样一个动态变化的行业未来时,首先要对编程语言进行回顾:C/C++和Java已经变成“古老”的语言,并且在业界仍占有一席之地。尽管在很多系统开发中C和Java不可或缺,比如对于高性能、实时性要求高的系统,C(C++)很重要,比如对于大型网站,Java很重要。但是它们所处的位置或获得的人气正在不可避免的出现稍微下降。

作为一名开发人员,Mr Herath 最喜欢的语言是 JavaScript。他在Medium上的一篇文章中为我们分析了 2021 年编程语言趋势。

调查数据

Stack Overflow 调查

Stack Overflow的年度开发人员调查是对全球编程人员而言最大、最全面的调查。有超过9万个开发人员参加了此调查。调查结果显示Python继续领先,而JavaScript和Go分别位于第二和第三位。但是这是在2019年进行的调查,作为一门快速增长的语言,Go的受欢迎程度正在疯狂增加。Mr Herath 认为统计数据可能会在2020年发生变化。

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

GitHub-GitHut排名

下面的GitHub 2.0图显示了2013年到2019年之间接受pull请求的数量。如图所示,JavaScript排在第一。

图源: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

从这些GitHub库数量,可以看到Go对开发人员的吸引力越来越高。Go语言库的Watch和Star都更高,尽管与JavaScript和Python库相比,人们对GO的偏爱要小一些。

调查数据

为什么选择Python?

Python是一种高级动态类型编程语言,在IT行业中已经流行了很多年。许多调查都认为Python是过去十年中最受欢迎的语言,当然这些年Python的受欢迎和人工智能的火爆大有关联。

Python的优点

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

简而言之,Python是一种多用途语言,具有简单,干净且对初学者友好的语法。所有这些都意味着Python很棒。从技术上讲,使用Python所做的一切,也可以使用其他编程语言。但是Python的简单性和优雅性使其比其他编程语言有了更大的发展。

无论是程序员还是绝对的初学者,学习Python都会在2021年带来很多就业机会。实际上,一个Python开发人员的平均年薪为116,000美元(美国)。

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

Node.js是最流行的JavaScript运行环境之一。众所周知,Node.js在IT行业中很受后端开发的欢迎。主要原因之一是Node.js基于JavaScript。JavaScript开发人员可以轻松地成为全栈开发人员,这是了解JavaScript的另一项优势。

JavaScript和Node.js的优点

  • non-blocking:这意味着Node.js确实非常快。(non-blocking文件读写是服务器需要做的事情之一。但这是Node.js要做的事情。)
  • 前端和后端使用一种语言编写。
  • Uber,LinkedIn,Netflix和Facebook等主要公司都在使用。
  • 跨平台:可以在Windows,Mac和Linux上构建和运行Node.js应用程序。
  • 庞大的社区:Gitter、Slack频道和Stack Overflow。
  • 框架不臃肿:它是一种Web服务器技术,可以与Node.js所使用的不同框架一起使用,例如Express(流行的Node.js框架之一)。

我们再一次看到Node.js还将成为在后端开发中使用的绝佳JavaScript环境。

观察下图,可以看到在2019–2020年期间,JavaScript用于后端和前端开发的比例相似。如果我们看一下美国Node.js开发人员的平均工资,可以发现它的年薪在48,000美元到130,000美元之间。

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

调查数据

为什么选择GO?

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

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

Go的优点

  • 高效:Go是一种类似C的语言,无需了解新的语法。
  • 跨平台。
  • 简单:它只有25个关键词和较少数量的数据结构(没有类,只有函数和类型)。
  • 可靠:这是一种快速的语言。默认情况下,它支持并发,具有漂亮的模型并默认情况下处理可用于生产环境的服务器。
  • 版本稳定:更新没有重大更改,并且与旧版本100%兼容。
  • 成熟:Go具有内置的包管理器测试框架和并发模型。

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

Go开发者在美国的平均薪水为每年45,000美元至130,000美元。

“我一生中最喜欢的东西不花钱。很显然,我们所有人最宝贵的资源就是时间。” ——史蒂夫·乔布斯

结论

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

当然,若是作为深度学习炼丹师,Python的使用是跑不掉的,C/C++也会派上大用。

参考文献:

https://github.com/nodejs/node

https://github.com/nodejs/node

https://github.com/nodejs/golang/go

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

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

编辑:王菁

校对:林亦霖

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-09-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 学一学大数据 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 调查数据
  • Stack Overflow 调查
  • GitHub-GitHut排名
  • GitHub库
  • 为什么选择Python?
    • Python的优点
    • 为什么选择JavaScript(Node.js)?
      • JavaScript和Node.js的优点
      • 为什么选择GO?
        • Go的优点
          • 结论
          • 参考文献:
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档