2020年及未来编程趋势预测:Rust将成主流,JavaScript依然强势

编者按:虽说编程一直都是朝阳产业,但是在语言、框架日新月异、层出不穷的情况下,最怕的就是学错语言或者框架,因为缺乏市场和应用而白费了一番努力。如何才能不被淘汰,要关注未来的趋势。Indrek Lasn结合各自趋势图提供了自己的见解。原文标题是:2020 and Beyond Programming Trend Predictions

2020已经若隐若现,这听起来似乎很疯狂。2020年听起来似乎是科幻小说的时间概念,但我们就在这里——即将敲开它的大门。
如果你对编程世界的未来感到好奇,那么你来对地方了。我可能完全搞错——所以不要说是我说的——但以下就是我认为会发生的事情。我无法预测未来,但我可以做出有根据的猜测。
预测未来最好的方法就是去创造未来。
——亚伯拉罕·林肯
Rust将成主流

Rust- https://www.rust-lang.org/
Rust是一种专注安全,尤其是并发性安全的多范式系统编程语言。Rust在语法上与C ++类似,但它的目的提供更好的内存安全,同时保持高性能。
我们已经目睹了Rust编程语言连续四年出现了强劲增长。我相信2020年将是Rust正式进入主流的一年。当然什么才叫主流是仁者见仁智者见智,但我相信学校会开始把Rust引入到他们的课程当中。这将会培养出一批新的Rust工程师。

最受喜爱的编程语言,来自2019 StackOverflow的调查。
Rust已经证明自己是一门优秀的语言,有一个充满活力且非常活跃的社区。随着Facebook用Rust开发出了Libra——这是它做过的最大的一个项目——我们即将看到Rust都能干些什么。
如果你想要学习一门新语言的话,我强烈推荐你学习Rust。如果你想了解更多,我建议你从这本书学起。出发吧,Rust!
GraphQL将逐渐被接受

GraphQL Google 趋势
随着我们的应用程序变得越来越复杂,我们的数据消费也是如此。我是GraphQL的忠实粉丝,已经用过它很多次了。我认为,跟传统的REST API相比,这是一种非常优秀的数据获取解决方案。
典型的REST API需要通过多个URL加载,但GraphQL API只用一次请求就能获取应用程序所需的所有数据。

各种规模的团队在许多不同的环境和语言中都使用GraphQL,GraphQL可以为移动应用、网站和API提供支撑。
如果你对学习GraphQL 感兴趣,可看看我写的这个教程。
渐进式Web应用是一股需要考虑的力量
渐进式Web应用(PWA)是一种结合Web的最佳功能与移动应用程序的顶级特性来开发应用程序的新方法。
野生状态下的web开发者要比原生平台开发者的数量多得多。一旦大公司意识到他们可以重新利用自己的web开发人员来开发渐进式web应用,我猜我们将会看到大量的PWA出现。
大型公司可能需要一段时间才能接受,当然这对于技术来说是非常正常的。渐进性的部分通常会落入到前端开发这一块,因为它主要是与Web Workers API(Native Browser API)进行交互。
Web应用不会消失。越来越多的人开始认识到,写一个交叉兼容的PWA可以减少工作量并帮你赚更多钱。

PWAGoogle趋势
今天就是开始了解更多有关PWA知识的完美时刻,你可以从这里开始。
Web Assembly将会看到更多的光明

Web Assembly (缩写为Wasm )是堆栈型虚拟机的二进制指令格式。Wasm 被设计为一个可移植的目标,可用于编译C、C ++和Rust等高级语言。Wasm 还支持在Web上部署客户端和服务器应用。PWA也可以使用wasm 。
换句话说,Web Assembly是一种将JavaScript技术与不同级别技术相结合的方法。不妨考虑在React应用中使用Rust图像处理库。Web assembly可以让你这样做。
性能是关键,随着数据量的增长,保持良好性能将更加困难。那将是来自C ++或Rust的低级库发挥作用的时候。我们将会看到大一点的公司开始采用Web Assembly,然后雪球效应就出来了。
React将继续自己的统治

前端JavaScript前端库
React是迄今为止最受欢迎的前端开发JavaScript库,它也有很好的理由获此殊荣。开发React应用很有趣也很容易。就开发应用的经验而言,React团队和社区已经做了非常出色的工作。

React——https://reactjs.org
Vue、Angular和React我都用过,我认为它们都是很出色的框架。记住,库的目标是把事情干好,所以要少关注点它们的特色是什么,多关注点你要做的是什么。争论哪个框架才是“最好的”完全是没有意义的。选择好一个框架然后把你所有的精力都放在开发上才是正道。
如果你受到了启发的话,请从这份列表里面选择一些内容然后马上开始开发吧!
永远要把宝押在JavaScript上面
我们可以充满自信地说,2010年代是JavaScript的黄金十年。我们已经看到了JavaScript的大幅增长,并且似乎还没有放缓的迹象。
JavaScript开发者一度曾被诋毁,说他们 “不是真正的开发人员”。但JavaScript是任何一家大型科技公司的核心,比如Netflix、Facebook、Google等。因此,作为语言JavaScript跟任何其他编程语言一样具有正统性。要以身为JavaScript开发人员为荣。毕竟,JavaScript社区已经开发出了一些最酷、最具创新性的东西。
几乎所有网站都在一定程度上利用了JavaScript。有多少个网站?数百万!
想当JavaScript开发者?再也没有比现在更好的时机了。薪酬在涨,社区的活跃一如既往,就业市场巨大。如果你对学习JavaScript很感兴趣,那么《You Don’t Know JS》系列丛书就是很好的资料。

最受欢迎语言排位变迁情况
我之前写过JavaScript为什么这么火的话题——你也许也应该读一读。

顶级开源项目
译者:boxi。