![编程语言趋势预测:Rust将成为主流,React 继续统治编程世界](https://static001.infoq.cn/resource/image/99/30/9928ee5bc14a592f96b3eb08ec762530.png)
在编程语言的世界中,并非所有语言都能保持常青。实际上,随着新生代开发者转向新的编程语言和框架,很多编程语言的命运也开始出现不确定性。在未来两年内,整体采用情况又会出现哪些变化呢?
本文,Indrek Lasn 对未来两年内部分编程语言的可能趋势进行了预测,他同时表示:自己也有可能完全错了,如果真是这样,请不要引用本文的内容。但他认为,这些都是将会发生的事情。诚然,人并不能预测未来,但能做出有根据的猜测。
“预测未来最好的方法就是去创造未来。”
― Abraham Lincoln(第十六任美国总统)
Rust 将成为主流编程语言
![](https://static001.infoq.cn/resource/image/ea/41/ea6768aa06c22faba4268a0f5a702141.jpg)
Rust 是一种多范式系统编程语言,专注于安全性,尤其是安全并发性。Rust 在语法上与 C++ 类似,但它的设计目的是在保持高性能的同时,提供更好的内存安全性。
我们已经见证了过去四年来,Rust 编程语言的强劲增长。我相信到 2020 年,Rust 将会正式成为主流编程语言。虽然什么是主流有待自我诠释,但我相信,学校将会开始在课程中引入 Rust。此举将造就一批新的 Rust 工程师。
![](https://static001.infoq.cn/resource/image/f4/4b/f4d5d0c421108df93e05134f8bb8e74b.jpg)
2019 年 StackOverflow 调查中最受欢迎的编程语言。
Rust 已经证明,它是一种伟大的编程语言,充满了活力。除此之外,Rust 还有一个活跃的社区。随着 Facebook 使用 Rust 开发了 Libra 项目,这成了 Rust 有史以来最大的项目,我们即将看到 Rust 真正取得成就。
如果你想学习一门新的编程语言,我强烈建议你学习 Rust。如果你想了解更多的信息,我会推荐这本书 The Rust Programming Language (Covers Rust 2018) 方便你开始学习 Rust。进击吧,Rust!
GraphQL 采用率将持续增长
![](https://static001.infoq.cn/resource/image/28/5e/28feacc3538b212bb6dbc2d35920595e.jpg)
GraphQL 的 Google 趋势。
随着我们的应用程序变得越来越复杂,数据消费需求也在日益增长。我是 GraphQL 的超级粉丝,我已经用过很多次了。我认为,与传统的 REST API 相比,GraphQL 是一个更好的获取数据的解决方案。
虽然典型的 REST API 需要从多个 URL 加载,但 GraphQL API 可以只需一个请求即可获得应用程序所需的所有数据。
![](https://static001.infoq.cn/resource/image/1b/a8/1b13dbf4dd868262106e167483456ba8.gif)
在许多不同的环境和语言中,各种规模的团队都使用 GraphQL 来支持移动应用程序、网站和 API。
![](https://static001.infoq.cn/resource/image/c6/36/c6075aaecb21f369fc43c8e98cdf4e36.gif)
渐进式 Web 应用是一股不可忽视的力量
渐进式 Web 应用(Progressive Web Apps,PWA)是一种通过结合 Web 的最佳特性与移动应用的顶级品质相结合来构建应用的新方法。
比起特定于平台的本地开发人员,现在更多的是 Web 开发人员。一旦大公司意识到他们可以重新利用 Web 开发者来开发先进的 Web 应用,我怀疑这样一来,将会看到一波巨大的 PWA 浪潮。
不过,大公司需要一段时间才能适应,这对技术来说是很正常的。渐进式部分通常倾向于前端开发,因为主要是与 Web Workers API(本地浏览器 API)进行交互。
Web 应用则不会有任何进展。越来越多的人开始认识到,编写一个单一的交叉兼容的 PWA 可以减少开发的工作量,并节省大量的时间,赚到更多的金钱。
![](https://static001.infoq.cn/resource/image/d8/8e/d80e841e7f6d03bf2619b9a95140778e.jpg)
WebAssembly 的未来将更加光明
![](https://static001.infoq.cn/resource/image/d3/a8/d317f4e464c0190748c9ff70931bb5a8.jpg)
WebAssembly(缩写 Wasm)是基于堆栈的虚拟机的二进制指令格式。Wasm 被设计为用于编译 C、C++ 和 Rust 等高级语言的可移植目标。Wasm 还支持在 Web 上部署客户端和服务器应用程序。PWA 也可以使用 Wasm。
换句话说,WebAssembly 是一种将 JavaScript 技术与更高级的技术相结合的方法。如果你要在 React 应用中使用 Rust 图像处理库,WebAssembly 允许你可以这样做。
性能是关键,随着数据量的增长,保持良好的性能将会变得更加困难。而这就是 C++ 或 Rust 的低级库开始发挥作用的时候。我们将会看到更大的公司采用 WebAssembly 和 snowball。
React 将继续统治编程世界
![](https://static001.infoq.cn/resource/image/2d/b9/2db87c161de334dbcd09cdcee268d6b9.jpg)
React 是迄今为止最流行的前端开发 JavaScript 库,这也是有原因的。构建 React 应用很有趣,也很简单。就构建应用的经验而言,React 团队和社区都做得非常出色。
我曾使用过 Vue、Angular 和 React,我认为它们都是非常出色的框架。请记住,库的目标是完成工作,所以要少关注编程风格,多关注如何把工作做好。争论什么框架是“最好的”一点意义都没有。一旦选定一个框架之后,就将你所有的精力都用在构建任务上。
如果你有了灵感,请看一下这篇博文:The Secret to Being a Top Developer Is Building Things! Here’s a List of Fun Apps to Build! ,从文中挑选一些项目,就开始构建吧!
始终在 JavaScript 上下注
我们可以自信地说,2010 年是 JavaScript 的十年。我们已经目睹了 JavaScript 的大幅增长,而且到现在,发展势头似乎并没有放缓。
JavaScript 开发人员被称为“不是真正的开发人员”,从而受到了一些不公待遇。实际上,JavaScript 是任何大型科技公司的核心,如 Netflix、Facebook、Google 等等。因此,JavaScript 作为一种编程语言,与任何其他编程语言一样合法。要以身为 JavaScript 开发者为荣。毕竟,一些最炫酷、最具创新性的东西是由 JavaScript 社区创建的。
几乎所有的网站都在某种程度上利用了 JavaScript。现在有多少个网站?答案是:高达几百万!
因此,现在对 JavaScript 开发者来说,这是前所未有的最好时机。薪水在上涨,社区也一如既往充满了活力,而且就业市场巨大。如果你对学习 JavaScript 很感兴趣,那么你可以阅读 You Don’t Know JS 系列丛书,这是非常棒的读物。
![](https://static001.infoq.cn/resource/image/a3/51/a31334a7bc207b5a575f93c22ded2951.jpg)
我之前写过一篇关于 JavaScript 为何如此受欢迎的文章,你可能也应该读一读这篇文章:What Makes JavaScript Popular?
![](https://static001.infoq.cn/resource/image/7f/03/7f4c9dc1d71228b5f6e375869b209803.jpg)
作者介绍:
Indrek Lasn,Newly 联合创始人,信奉“简单很重要”的哲学理念。是 Cleversonder 和 Newly 的编辑,同时也是创意、技术、生产力和创业方面的资深作家。Twitter 账户是 @lasnindrek。
原文链接:
本文2020 and Beyond Programming Trend Predictions最初发布于 Medium 博客,经原作者 Indrek Lasn 授权由 InfoQ 中文站翻译并分享。
评论 5 条评论