2020年编程语言之争仍在继续

发表时间: 2019-08-13 18:13

编程语言界千变万化,关于 TOP 之争却从未休止。那么在即将到来的 2020 年,编程界的常青藤们是否会被新秀门“拍死在沙滩上”、进而取代之?本文的作者就给出了自己“有理有据”的见解。

他认为,在 2020 年必然会有以下趋势:Rust 将成为主流,React 的统治地位依然不可撼动,而 JavaScript 则依旧屹立不倒。与此同时,也会伴随着 GraphQL、渐进式 Web 应用等崛起......下面就让我们一探究竟吧。

声明:本文已获作者 Indrek Lasn 翻译授权。

作者 | Indrek Lasn

译者 | 弯月,责编 | 郭芮

出品 | CSDN(ID:CSDNnews)

以下为译文:

2020年近在咫尺,也许你已经无数次在科幻小说里读到过2020,然而一晃眼如今我们也站到了2020年的大门前。

这篇文章就让我们来看一看2020年的编程世界将会有怎样的发展。也许我的预测完全错了,但仅借此文表达我对未来的看法吧。虽然我无法预测未来,但我的这些猜测都是有理有据的。

“预测未来最好的方法就是去创造未来。”——亚伯拉罕·林肯

Rust将成为主流

https://www.rust-lang.org/

Rust是一种多范式的系统编程语言,专注于提高安全性,尤其是安全的并发性。在语法上Rust与C++类似,但是Rust旨在提供更好的内存安全性,同时保持高性能。

图源:Leftover Salad

在过去的4年中,我们见证了Rust编程语言的强劲增长,我也相信2020年Rust将正式成为主流的编程语言。虽然对于什么是主流编程语言,每个人都有自己看法,但我相信各个大学将开始在他们的课程中引入Rust——随之而来的,将是一批新的Rust工程师的诞生。

2019 StackOverflow调查中最受人爱戴的编程语言

事实证明,Rust是一种充满活力的优秀语言,且拥有一个活跃社区。随着Facebook使用Rust建立了Libra项目(这是有史以来最大的Rust项目),我们即将见证Rust真正的强大之处。

如果你想学习一门新语言,那么我强烈建议你学习Rust。如果你想了解更多关于Rust编程的知识,那么我推荐你阅读《Rust编程语言》。

向着Rust迈进吧!

GraphQL的采用率将持续增长

GraphQL的增长趋势

随着我们的应用程序变得越来越复杂,我们的数据也在不断增长。我是GraphQL的忠实粉丝,我已经多次使用它了。我认为与传统的REST API相比,GraphQL是一种非常优秀的获取数据的解决方案。

一般的REST API需要从多个URL加载数据,但GraphQL API只需通过一个请求就可以获取应用程序所需的所有数据。

各种规模的团队已在不同的环境和语言中使用GraphQL,来支持移动应用、网站和API。

采用了GraphQL的各个公司

如果你对学习GraphQL感兴趣,那么可以参考我写的这个教程(https://medium.com
/better-programming/how-to-setup-a-powerful-api-with-graphql-koa-and-mongodb-339cfae832a1)。

渐进式Web应用的崛起不容忽视

渐进式Web应用程序(Progressive Web App,即PWA)是一种全新的构建应用程序的方法,其将Web功能的优势与移动应用的特性结合了起来。

图源:Rami Al-zayat on Unsplash

Web开发人员的数量远远超过了特定于原生平台的开发人员。如果大公司能够意识到他们可以利用Web开发人员来制作渐进式Web应用程序,那么我相信我们一定能看到一大波的PWA呼啸而来。

然而,大公司需要一段时间才能适应新技术。渐进式Web应用程序属于前端开发的范畴,因为它主要是与Web Workers API(原生浏览器API)进行交互。

与Web应用相比,越来越多的人开始认识到,编写一个交叉兼容的PWA可以减少工作量,且省时省力。

PWA的发展趋势

所以,从现在就开始学习PWA吧。

WebAssembly曙光在即

WebAssembly(简称Wasm)是基于堆栈虚拟机的二进制指令格式。WebAssembly的设计目标是具备可移植性,用于编译C、C++和Rust等高级语言。WebAssembly还支持在Web上部署客户端和服务器应用程序,PWA也可以使用WebAssembly。

换句话说,WebAssembly是一种将JavaScript技术与更多级别技术相结合的方法。例如在React应用中使用Rust图像处理库,WebAssembly就可以帮助你实现。

https://youtu.be/qDTpLKJ6e4M

性能是关键,随着数据量的增长,维持良好性能的难度越来越高。所以,有时我们就需要使用C++或Rust的低级库。我们将看到大公司也开始采用WebAssembly,这个雪球会越滚越大。

React的统治地位依然不可撼动

JavaScript前端库

React是迄今为止最受欢迎的JavaScript前端开发库,当然这也合情合理。构建React应用轻松又有趣,在构建应用程序的体验方面,React团队和社区完成了出色的工作。

https://reactjs.org

我曾使用过Vue、Angular和React,我认为它们都是很棒的框架。请记住,代码库的目标是完成工作,所以要避免个性太突出,应该注重完成工作。关于哪个框架才是“最好的框架”的争论完全没有意义——你只需选择一个框架,然后全力以赴构建自己的产品。

JavaScript屹立不倒

我们可以信心满满地说,2010-2019年是JavaScript的黄金年代。我们亲眼目睹了JavaScript的突飞猛涨,而且这种增长势头依然没有放缓。

https://youtu.be/51QNMy9MlZY

有人谑称JavaScript开发人员“算不上真正的开发人员”。其实,JavaScript是很多大型科技公司的核心,例如Netflix、Facebook、Google等等。因此,JavaScript也是一种堂堂正正的编程语言。我们应该以作为JavaScript开发人员为荣。毕竟,JavaScript社区构建了很多新奇炫酷的东西。

在某种程度上几乎所有网站都使用了JavaScript。那么到底有多少个网站呢?数百万个!

现如今是JavaScript开发人员的黄金时代,工资噌噌地张,社区一如既往地活跃,就业市场巨大。如果你对学习JavaScript很感兴趣,那么就从《You Don't Know JS》系列丛书开始吧。

年度最流行的编程语言

顶级的开源项目

感谢您的阅读!如果你认为哪些项目或语言值得拥有更多的关注和爱戴,请在下方留言!

原文:https://medium.com
/better-programming/2020-programming-trend-predictions-a5d6b70bec26,作者Twitter@lasnindrek。

【END】