编&译: 2018年值得学习的热门JavaScript类库与技术。

译者想说的话:


本来想最后的,但是翻译完了一看贼他妈长,谁高兴看到最后哦!就放前面了。
这是一篇发表在2017年11月29日的文章,我现在翻译也滞后了很多了,但对于墙内的朋友来说,也不算太晚吧。来看看2018年什么技术值得学习。
作者的结论放前面:React很好很牛逼,大家都学啊!找工作不愁,找媳妇无忧
当然了,这是作者的观点,你可以不同意,事实上,我并不是非常同意。
主要是通过文章的论述,看到作者是如何搜索数据信息并根据结果得出对应的结论的。
本文作者主要使用了Google趋势,GitHub的下载量,Npm的下载量,Indeep.com的招聘岗位信息获得数据。
你可以自行用相似的工具在国内市场进行一番分析,看看结论是否一致。
我个人认为:React开发多样性更好,更稳健,适合大型项目,但Vue开发更简单快捷,适合小型项目。但我也建议:先学React,然后顺手把Vue学了。

本文原载于Medium

以下是译文

去年,我写了一篇文章集中了2017年值得学习的热门技术。今年带来了更多的惊喜。

本文将会回答一个问题:“在投入了学习时间后,那些学习方向可以带给你最高的回报?“

JavaScrip拥有最多的包数量,数据来源:landslide.

首先:软件占据了世界,Web占据了软件领域,JavaScript占据了Web。2018年,React将占据JavaScript。

2018: 今年是React年!

React在2017年的流行度战争中获得胜利。

仍然有大量的开发者使用Angular相关技术工作,有谷歌趋势为证:
谷歌趋势上各框架搜索热度

但随着React持续地赢得使用者的满意度的调查,React增长速度已经让Angular(和其他所有框架)望尘莫及。

Vue.js呢? 我听说还挺热门的

人们经常会做一些十动然拒的选择,比如对Vue.js。这是我去年说过的:

Vue.js 在GitHub上有着大量的Star和下载。如果保持这样的发展势头,2017将会表现得非常好。但我并不认为明年(乃至更将来)他可以撼动React或者Angular(两者的增长也非常快)的地位。建议学完React或者Angular之后再学习Vue。

Vue.js在2017年表现得很好。获得了大量的报道,也有许多人对其产生了兴趣。但和我预料的一样,他甚至没能影响到React的地位,我非常自信地预测2018年他仍然不能撼动React。这句话也意味着,2018年Vue将取代Angular:

Vue.js 每月下载量

如你所见,Vue从Angular手中夺走了下载量:

Angular/core 每月下载量

但 React遥遥领先,并且有着极高的增长率:

React 每月下载量

Vue.js增长快于React。那么与React和Angular在2017之间的竞争有什么不同呢?

在2016年末,JavaScript世界已经准备迎接一个新的框架了。Angular的用户非常不满意,而React的用户满意度很高,非常多的人想要学习React,极少数的人愿意学习Angular。在2017年末,Angular 2+ 用户的满意度仍然低于50%,仅有49%。

这场竞争与React和Vue.js之间的非常不同。React在用户满意度方面战胜了Vue.js(93%对90%)。2017年初由于React的许可的争论刺激了用户放弃了React。Facebook听取了用户的心声,并将许可更改了回去。

在这场角逐中,我并没有看到关键性的证据表明用户正在从React切换到其他框架。对Vue.js来说,比起从jQuery和Angular手中抢走用户来说,从React手中抢走用户会更艰难。

Vue.js有巨大的空间从Angular和jQuery手中里快速抢走用户,但接下来当它不得不从React手里抢走用户以获得持续的增长,可能就要碰钉子了。

我预测Vue.js在接下来的1到2年内仍能有巨幅增长,接下来就将在定点与React展开一张艰难的争夺战,最终Vue.js会降到第二梯队,除非有什么颠覆性的改变。

Jobs

jQuery已经陨落.

在招聘市场上,React已经完全甩开了jQuery--十年来第一个在招聘市场受欢迎度超过jQuery的框架(1)。我们正在见证一个时代的结束。

React增长数 — 十年来第一个超越jQuery的框架 (数据来源: Indeed.com)

与去年的图表比较一下:

jQuery是2016年的主角

这个图表所展现的另一个有趣之处是:其他框架/类库获得的增长数远超过jQeruy失去的用户数。去年一年内,所有提到前端框架的招聘工作岗位数上升了超过10K。

随着工作岗位数的增加,我们还能发现在平均薪资上也获得了增长,从2016年末的年薪93,000刀上升到了年薪110,000刀

显然,2018年前端依然是一个增长的市场。

  1. 方法论: 所有工作信息在Indeed.com进行搜索获取。为了剔除错误数据,搜索时我附加了关键词“软件(software)”以提高相关度,然后乘以系数1.5(是否使用“软件”为关键词搜索到编程岗位工作数的一个粗略比)。所有的SERPS(搜索引擎结果页)都用日期排序,并且抽查了相关度。这个结算结果不是100%准确,但在本文内用作一个相对近似的结果已经足够了。

框架推荐

在看过今年的这些数字之后,我准备强烈推荐React作为通用的APP解决方案,包括手机APP(PWAS,React Native),网页应用,大多数的办公生产工具和桌面媒体内容生产应用程序(参见Electron)。

也有一些明显的例外:轻量级的销售引导页(完全放弃框架),3D游戏,AR/VR。对于3D内容,看看Unity, Unreal,或者PlayCanvas。也就是说React也可以用于3D内容UI。

我也严格地对今年其他可选的前端框架做了排序。并不是说他们不够酷,只是在招聘市场上,他们完全称不上React的竞争者,这个列表是关于ROI(投资回报率),而不是关于最佳技术的。

为何React吸引了如此多的关注?

Why so Much Interest in React? 浏览了所有关于React的招聘信息,我注意到一个有趣的趋势--非常多的团队用React做一些我们通常认为并非Web前端的工作。

  • React Native(一个观点,在RN方面的开源库超过Vue.js相关开源库的总数)
  • React 用于物联网
  • React 用于AR/VR(Oculus Rift(译者注:被FaceBook收购的虚拟现实眼镜开发商)引导了这方面的招聘潮流)
  • React 用于一些你根本没听过的复杂计算机应用。

多用途是React的一个大卖点。与其他众多框架不同,使用React并不代表必须操作数据Model,甚至浏览器或者DOM本身。事实上,我发现有极少数React相关岗位甚至没有提到JavaScript。

React也提供了大量活跃的依据React标准实现的生态系统--一些从jQuery插件统治Web世界以来从未出现过的东西。

问题不再是:“使用哪个框架?” 而是:“什么技术和React结合得最好”

2018年(乃至2019年)没有什么可以撼动React的地位。你很安全。JavaScript的疲劳似乎正在消退。现在我们有了一个伟大框架用于构建APP,并且围绕着React有着大量的软件生态系统。

你该学习那些课程?

和去年一样,你不能错误地聚焦要点,你应该更重视React APPs所使用的函数式编程。

React的两大主要优势

  • 确定的视图渲染机
  • 从直接的DOM操作抽象出视图层

使用纯函数编程构建APP可以提供最好的确定性,这也是函数式编程的本质意义。

考虑到这一点,下面列出一些你应该学习的课程:

类库与工具

以下是一些我认为最有用的类库与工具: (译注:相关链接就不附加了,请自行搜索教程)

  • React
  • Redux
  • Redux-Saga 管理异步I/O和隔离副作用
  • Next.js  使用Node和Express做SSR(服务端渲染)
  • Material UI(译注:谷歌设计语言)
  • Storybook
  • Cheerio 用作React组件的单元测试(比起Enzyme,我倾向于使用Cheerio)
  • Lodash
  • Babel 用于编译ES6使其可以在更老的浏览器上工作.
  • Webpack JavaScript最流行的打包工具
  • ESLint 轻松找出语法和结构错误。在检查代码和测试驱动之后,减少你代码错误的最好办法。
  • Ramda
  • Node与Express
  • RxJS 使用 Observables 的响应式编程的库。使用patch imports避免最后打包体积过大

TypeScript在2017表现不错,但我觉得他并没有提供多大的帮助反而使得APP更复杂了。他的主要缺点是因为编程语法和直觉相反导致过分依赖注释,并且要写出高度有序的函数通常伴随着难以形容的扭曲感。我试过一阵全天使用其进行开发,但最后给我的感觉是: “令人震惊的静态类型的秘密”“你可能不需要使用TypeScript”

2018值得关注的技术

所有下列正在研究和开发的领域将在2018年创造真正的工作岗位:

  • 增强型网页应用(PWAs)
  • 区块链与金融技术
  • 医疗行业技术
  • AR/VR Hololens, Meta和ODG现在已经发行了。ODG R-9计划2017年发行,但已经改到了2018年发行。MagicLeap承诺将在2018年发行。AR将会带来超越手机带给人们的交互体验革新。
  • 3D 打印
  • AI
  • 无人机

量子计算机也将会改变世界,但可能要到2019年甚至更晚才能真正可用。现在已经有了在线的量子计算机,但他们能做的还不多。现在对于大多数开发者来说开始体验生产还为时尚早。微软最近发布了他的Q#编程语言(译注:国外一篇报道)。同时,IBMGoogle都开始投入大量资源在云量子计算机市场里了。(译注:链接均为国外报道)

如果你想要准备开始学习量子计算机编程,你可以从linear algebra开始学习。 也有一些量子计算机方面基于Lambda 演算所做的功能性的探索

可以遇见的,我们将会看到一些AI,云APIs被开发出来以帮助一些数学背景薄弱的人们体验到量子计算机的一些能力。


下面是作者的广告

Need React Training for Your Team?

DevAnywhere offers live remote training plus 1:1 mentorship to teach the functional programming and software composition principles critical to getting the most from React.

  • Live lessons
  • Flexible hours
  • 1:1 mentorship
  • Build real production apps
https://devanywhere.io/

作者介绍:

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.

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,185评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,445评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,684评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,564评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,681评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,874评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,025评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,761评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,217评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,545评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,694评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,351评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,988评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,778评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,007评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,427评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,580评论 2 349

推荐阅读更多精彩内容