2021年,你应该选择哪种后端编程语言?

发表时间: 2020-08-26 17:40

作者 | Mr Herath

译者 | 鹿未来,责编 | 郑丽媛

头图 | CSDN 下载自视觉中国

出品 | CSDN(ID:CSDNnews)

以下为译文:

2020年已到8月份了,虽然今年的技术趋势预测还没结束,可作为程序员,想要跟上行业前沿走向,并"生存"下去并非易事。正因为在软件行业中不好”生存“,所以人们希望技术能够永存。

回顾过往,历史悠久的编程语言包含很多重要的组件,C和Java就是比较典型且常用的两种,但如今这两种语言的人气值却在曲线下降。

作为一名开发者,我喜欢用JavaScript(就像有了永恒的纽带),而且用了很长时间。可就在我们擦亮双眼看看开发者身处的世界时,有些事情就会出现偏差。如果说让我们从JavaScript、Python、Go中,选择一种语言在2021年使用。那么,你会选哪种?现在在说各自优点之前,不妨先看一下调研结果。

调查及数据分析

Stack Overflow 调查

每年的Stack Overflow开发者调研都是全球内极具规模和有深度的调查,有超过9万的开发者参与调研。据调查报告显示,Python位居榜首,JavaScript和Go分别排在第二和第三的位置,不过这个调研是2019年的。Go语言涨幅非常疯狂,也算是飞速发展的一种语言。在2020年的调查报告中,我个人觉得统计数据会发生变化。

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

GitHub-GitHut排名

下面这张图是从2013年-2019年中各个语言的 pull request 量,如图所示,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储存库

通过以下这些Github储存库,我们可以看到开发者对GO语言越来越喜欢。与JavaScript、Python相比,Go 的 fork 数虽不及它们,但是GO存储库的数量和star数也越来越多。

来源:https://github.com/python/cpython

来源:https://github.com/nodejs/node

来源:https://github.com/golang/go

为什么要选择Python?

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

Python的优势

    • Python可以用最短的时间和最少代码量解决复杂的问题。

    • Python通过简单而强大的语法使许多复杂的事情变得非常容易。

    • Python是一种高级语言,不必担心C ++内存管理之类的复杂任务。

    • Python是跨平台的,可以在Windows、Mac和Linux上构建、运行应用程序。

    • Python有一个庞大的社区。遇到困难时,会有人帮助。

    • Python具有很多的库、框架、工具。Python已经问世20多年,无论想做什么,很可能以前别人都做过。

简而言之,Python简单、干净,适合初学者使用。从技术上来讲,用Python编程的同时都可以使用其他的语言转换,Python的简单性和优雅性使其比其他编程语言有了更大的发展。无论你是程序员还是绝对的初学者,学习Python都会在2021年为你带来很多就业机会。其实,Python开发者的平均年薪高达116,000美元。

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

个人很喜欢Node.js,从开始做后端起一直用Node.js。到目前我谈论编程语言,但不得不说Node.js是在JS运行环境钟最受欢迎的。我们都知道,Node.js在IT工业中服务后端的,一个主要是原因是Node.js是基于JS,如果你是JS的开发者,拿你很容易成为一个全栈工程师,这也是JS的另一个优势。

JavaScript and Node.js的优势

    • 无障碍,这意味着Node.js很快(前后端使用一种编程语言,无阻碍IO读写就是Node.js要做的)

    • Uber、LinkedIn、Netflix和Facebook等大厂公司都在用。

    • Node.js是跨平台的。可以在Windows,Mac和Linux上构建和运行Node.js应用程序。

    • Node.js有一个庞大的社区——Gitter社区,此外还可以找到Slack频道和Stack Overflow讨论。

    • Node.js不是一个臃肿的框架。它是一种Web服务器技术,可以与Node.js已有的不同框架一起使用,例如Express(流行的Node.js框架之一)。

在后端开发时,再次可以看到Node.js将会成为更好的JS环境。如下图所示,在2019-2020这段时间,JS在前后端使用中所占的比例差不多,另外,美国Node.js开发者的平均薪资在48,000-130,000美元。

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

为什么要选择Go?

Go语言是一种开源的编程语言,它很容易构建简单、可靠、高效的软件。2009年Go语言问世,但一直没有JS和Python火,Go语言曾两次被评为年度编程语言。此外,Go语言已成为67.9%的开发人员最喜欢的编程语言。很显然,开发者喜欢Go语言是有原因的。

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

Go语言的优势

    • 高效,Go语言语法类似C语言,也不需要重新学习新的语法

    • Go既是简单的语言又是跨平台语言,只有25个关键字和较少数量的数据结构(没有类,只有函数和类型)。

    • Go语言是既是可靠的语言又是快速语言,支持并发,具有漂亮的模型并默认情况下处理可用于生产环境的服务器。

    • Go语言不会经常更新,而且是与旧版100%兼容

    • Go是一种成熟的语言,具有内置的包管理器测试框架和并发模型。

基于以上优点,Go也是一种很棒的语言。您可能要花更多时间弄清为什么还没有开始使用Go。如我们所见,大多数程序员都将C语言作为他们的第一门编程语言来学习。如果以这种方式开始学习和使用Go,可以说是毫不费力。看一下Go开发者在美国的平均工资:每年45,000美元至130,000美元。

“My favorite things in life don’t cost any money. It’s really clear that the most precious resource we all have is time.” — Steve Jobs

总结

如我们所见,Go在过去几年都做得很好。根据调查,与JavaScript、Python相比,Go吸引了大量用户。在接下来的几个月中,人气和资源也还会增加。即使我一开始是使用JavaScript,但我还是认为Go语言将作为2021年使用的最佳后端编程语言。

欢迎留言,看谁会是2021年预测王!

参考文献

  • 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

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

本文为 CSDN 翻译,转载请注明来源出处。