点击图片上方蓝色字体“慧天地”即可订阅
文章转载自微信公众号AI科技评论,编译:陈大鑫,版权归原作者及刊载媒体所有。
Tensorflow和Pytorch到底该用哪个呢? “import tensorflow as pytorch!” 编程语言及框架似乎总是被人拿来比较,这里我们只谈语言。 作为开发人员,在当今这个技术更迭飞快的时代要连年吃香并非易事,很多十年开发经验以上的开发人员不知道经历了多少语言的变化,今年还在用C语言,下一年就是D了。 “PHP是世界上最好的编程语言”已被人忘却,但“青春饭”和35岁“金龙跃鱼门”的传说确真实发生。 在预测这样一个动态变化的行业未来时,首先要对编程语言进行回顾:C/C++和Java已经变成“古老”的语言,并且在业界仍占有一席之地。尽管在很多系统开发中C和Java不可或缺,比如对于高性能、实时性要求高的系统,C(C++)很重要,比如对于大型网站,Java很重要。但是它们所处的位置或获得的人气正在不可避免的出现稍微下降。 作为一名开发人员,Mr Herath 最喜欢的语言是 JavaScript。他在Medium上的一篇文章中为我们分析了 2021 年编程语言趋势。
1
调查数据
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的偏爱要小一些。
2
调查数据
为什么选择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/
3
调查数据
为什么选择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美元。 “我一生中最喜欢的东西不花钱。很显然,我们所有人最宝贵的资源就是时间。” — 史蒂夫·乔布斯
4
结论
如我们所见,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
内容转载、商务活动、投稿等合作请联系
微信号:huitiandi321
邮箱:[email protected]
欢迎关注慧天地同名新浪微博:
ID:慧天地_geomaticser
往期精彩推荐
7个最佳的学习Python编程的开源库编程语言趋势最新报告:开发者最青睐DevOps,Kotlin增长最快
2020 年七大 AI 编程语言大盘点
《慧天地》敬告
《慧天地》公众号聚焦国内外时空信息科技前沿、行业发展动态、跨界融合趋势,探索企业核心竞争力,传播测绘地理信息文化,为测绘、地信、遥感等相关专业的同学提供日常学习、考研就业一站式服务,旨在打造政产学研用精准对接的平台。《慧天地》高度重视版权,对于原创、委托发布的稿件,会烦请作者、委托方亲自审核通过后才正式推发;对于来自网站、期刊、书籍、微博、微信公众号等媒介的稿件,会在作者栏或者文章开头显著标明出处,以表达对作者和推文引用平台版权的充分尊重和感谢;对于来源于网络作者不明的优质作品,转载时如出现侵权,请后台留言,我们会及时删除。感谢大家一直以来对《慧天地》的关注和支持!——《慧天地》运营团队
编辑:张自轩 审核:富裕 欧雅玟 指导:万剑华教授