- 原文地址:Top JavaScript Libraries & Tech to Learn in 2018
- 原文做者:Eric Elliott
- 译文出自:掘金翻译计划
- 本文永久连接:github.com/xitu/gold-m…
- 译者:gy134340
- 校对者:moods445, vuuihc
Alex Proimos—纽约公共图书馆自修室 (CC BY 2.0)javascript
去年,我写了一篇关于 2017 须要学习的技术 的文章。今年有一些惊喜。前端
咱们致力于回答 “在你投资学习的时候,哪些最高效?” 的问题vue
JavaScript 有最多的包,取得压倒性胜利。java
首先,软件吞噬了世界,web 吞噬了软件,同时 JavaScript 吞噬了 web。而在 2018 年,React 正在吞噬 JavaScript。node
React 在 2017 年赢得了人气之战。react
从 Google 趋势能够看出,仍是有不少开发者基于 Angular 开发:android
可是 React 持续的赢得用户满意度。它迅速增加并远远抛开 Angular (以及其余) 框架。webpack
每一个人都喜欢口头上谈及相关的替代选项,好比 Vue.js。这是我去年说的:ios
Vue.js 有不少的 GitHub star 和下载量。若是状况继续发展的话,它在 2017 年将会表现的很好,但我不认为它会在下一年里替换 Angular 或者 React。因此在你学习 React 或者 Angular 以后再学习它吧。git
Vue.js 在 2017 年表现出色,赢得了不少新闻头条和人们的兴趣。像我所预测的那样,它没有遇上 React, 同时我也确定的说在 2018 年也不会发生。即使如此,它可能在 2018 年超过 Angular:
Vue.js 下载量/月
如你所见, Vue.js 正在遇上 Angular 的下载量:
angular/core 下载量/月
可是 React 有很强的领先趋势和与之相同的增加率:
React 下载量/月
Vue.js 比 React 增加的更快,那与 2017 年 React 和 Angular 的对比有什么不一样呢?
在 2016 年底,JavaScript 世界准备好迎接新的框架了。Angular 的用户很是的不满,React 的用户则与之相反,许多人想学习 React,不多人愿意学习 Angular。在 2017 年年尾,Angular 2 以后的用户满意度仍是不到一半,只有 49%。
React 和 Vue.js 则是彻底不一样的情节 React 的用户满意度更高 (93% 对比 90%)。2017 年早期,从 React 转向 Vue 的最大的刺激是 React 的开源许可证的问题。Facebook 听取了用户的建议后来更改了协议。
在这一阶段,我看不到任何迹象可让市场从 React 切换到其余的。Vue.js 从 React 手中夺取用户要比从 jQuery 和 Angular 那里难的多。
从 Angular 和 jQuery 那里夺取用户有不少空间,可是从 React 那里获取用户来得到持续的增加将会很快碰到瓶颈。
我预测 Vue.js 这种快速的增加只会持续一到两年,它会在顶部与 React 进行激烈的竞争,而后会停在第二位,除非有大的改变能够打破这个平衡。
jQuery 凉了。
在职位列表中, React 彻底取代了 jQuery 以前的位置——这是十年来第一个超越 jQuery 的库¹。咱们看到一个时代的终结。
React 取代了十年来 jQuery 第一的位置 (来源: Indeed.com)
对比一下去年的图:
jQuery 2016 年是这样的
有趣的点在于其余库的增加值大于 jQuery 滑落的值。总的来讲,库相关的职位在去年增加了 10k 或更多。
在职位的增长下,咱们还看到平均工资的增加$110k 对比 2016 年的 $93k。通货膨胀同期保持在2%如下,这也不会过多的影响这一爆炸式增加。
显然,在 2018 还有是卖方市场。
1. 方法: 职位的搜索在 Indeed.com 完成。为了加强数据的可靠性,我成对的搜索 “软件” 相关的关键字扩大相关性,而后乘以大约 1.5 (粗糙的区分那些编程工做列表使用 “软件” 关键字和不使用的)。全部相关的都按日期排序记录相关性,其结果不必定 100% 准确,可是已经足够用来在此文中表示粗略的度。
在看了今年的数据以后,我强烈用最普遍使用的 React 来开发应用,包括移动端应用(PWAs, React Native),web 应用,大部分的生产力工具,以及桌面媒体应用(Electron)。
某些明显的状况下,其余的可能更为适用好:轻量的营销页面(彻底不须要框架),3D 游戏,AR/VR。对于 3D 的内容,看看 Unity, Unreal, 或者 PlayCanvas。即使如此,React 也能够做为 3D 内容的 UI 库。
我强烈不建议转向其余能够备选的前端框架。这并非说它们很差,只是它们不是市场上 React 有力的竞争者。记住,这个列表是关于投资回报率,而不是哪个技术是最棒的。
浏览 React 的职位列表,我注意到不少本不该该属于前端工做的有趣的趋势:
React 已经脱离了它 web 的土壤
灵活性是 React 最大的卖点。不像其余框架,采用 React 并不意味着关注它的数据模型,甚至浏览器和 DOM。事实上,我发现很多 React 的工做需求彻底没有提到 JavaScript。
React 提供了基于其标准的丰富的充满活力的生态系统,这些从 jQuery 统治 web 以来历来没有看到过。
问题再也不是“哪个框架?” 问题是 “什么技术能够更好的搭配 React?”
没有任何事物能够在 2018 改变 React(也许 2019 也是)。你很安全。JavaScript 疲劳渐渐稳定了。咱们有了一个伟大的构造应用的框架,同时有着相关的优秀的生态系统。
像去年同样,你不能错误的关注一些要点,可是你应该更加剧视 React 应用的函数式编程。
React 有两点优秀之处:
肯定性经过使用纯函数构建应用来实现,这本质上也是函数式编程的定义。
考虑这一点, 这是一些你须要学习的内容:
instanceof
, 避免类的使用者使用 new
关键字。这里是一些我发现的最有用的库和工具:
lodash/fp
)。只导入须要的包避免增大打包体积。TypeScript2017 年表现不错, 但我认为它增长应用的复杂度的弊端大于它的帮助,它的主要缺点是过度依赖类型标注而不是类型推论,同时对高阶函数的类型有没法形容的扭曲,我作了一成天的试用,这些状况仍然存在:“静态类型之秘” 和 “你也许不须要 JavaScript”。Flow 跟 TypeScript 有相同的问题同时开发者工具也不如 TypeScript 的棒。
全部的这些都是 2018 研究与开发领域真实的工做:
量子计算也将改变世界,可是也许在 2019 或者更晚改变才会开始。目前有在网上工做的量子计算机,可是他们还作的不是不少。如今对于大多数开发者来讲开始试验性生产还太早。微软最近发布了它的量子计算编程语言 Q#,IBM 和 Google 也继续大量投资本身的量子云计算市场。
若是你想学习量子计算,你也许须要学习 线性代数,同时也有对于量子计算也有一些基于 lambda 演算 的函数式探索。
颇有可能,像咱们看到的 AI, 云 API 将会被开发出来让有不一样数学背景的人来更好的利用好量子计算的能力。
DevAnywhere 提供一些 React 的线上教程,和一对一的关于 React 中函数式编程及软件构建原理的指导。
Eric Elliott is the author of “Programming JavaScript Applications” (O’Reilly), and cofounder of DevAnywhere.io. He has contributed to software experiences for Adobe Systems, Zumba Fitness, The Wall Street Journal, ESPN, BBC, and top recording artists including Usher, Frank Ocean, Metallica, and many more.
He works anywhere he wants with the most beautiful woman in the world.
掘金翻译计划 是一个翻译优质互联网技术文章的社区,文章来源为 掘金 上的英文分享文章。内容覆盖 Android、iOS、前端、后端、区块链、产品、设计、人工智能等领域,想要查看更多优质译文请持续关注 掘金翻译计划、官方微博、知乎专栏。