框架的游戏:2019 年 JavaScript 流行趋势

JavaScript 生态系统复杂多变,各种框架让人眼花缭乱。究竟孰优孰劣,如今的发展趋势是怎样的,用人单位又需要怎样的人才?本文站在一个中立者的角度,客观分析了当前这场“框架的游戏”中,JavaScript 的流行趋势。

Javascript 的生态环境让我想到了战场。TypeScript 对战 ES6,React 对战 Angular,Jest 对战 Mocha……就像在看热播的电视剧一样,这些激烈的冲突让 JS 的粉丝们焦急地等待着更新,并不禁扪心自问:我下一步究竟该学什么?与此同时,每种技术的粉丝军团仅仅是在火上浇油而已。

我们在 CV Compiler 平台每周帮助几十个 JS 开发者完善他们的简历,所以我们也在持续跟进着“框架的游戏”,定期分析着用人单位的需求。但在这篇文章中,我不会去支持或反对任何一种技术——只会站在一个中立的角度,来分析一下当前 JavaScript 的流行趋势。

1. 当今 JS 开发者需要具备的能力:我们基于数据的研究

我们从 AngleList、StackOverflow、LinkedIn 和一些全世界范围内发展很快的科技公司的招聘页面等多个平台上选取了 300 个 JavaScript 开发岗的招聘要求。我们利用自己的文本分析工具,计算出了这些要求中最常提到的一些术语,如下图所示(图中数字表示各术语被提及的频率)。
JS

注意:上图可以代表以 JavaScript 为主要语言的职位的一般技能等级。当然,我并没有说后端开发人员应该完全了解 React 之类的,因为该图表仅反映了当前的市场需求,这可能与 JS 开发者自身的偏好不同(关于这点我们将在下一节详细讨论)。

2. 主要收获

在我们的评级中没有被展示出的非 JS 语言中,提及频率最高的是 C#和 PHP。至于数据库管理系统,MySQL 和 MongoDB 也马上要冲进评级榜单了。令人惊讶的是,常见的 Express.js 被提及的频率较低,Flow 也是如此。

虽然图表中没有提到 Agile(敏捷)这个术语,但它比 Git 或 Redux 被提及的频率更高,这说明 JS 开发者们除了要获得开发岗位必须的硬技能,软技能同样不可忽视。UX 也是如此。当然,你没有必要为此专门参加一个高级的 UX(User experience)课程(如果可以参加的话自然就更好了),但作为一个前端开发者,你需要知道如何在技术层面为用户提供更流畅的体验,而不是在设计层面。

我们还遇到了可扩展性(Scalability)、云计算(Cloud Computing)和安全性(Security)这样的术语。这一事实表明,JS 继承了开发人员行业的趋势。

你可能已经注意到,在我们的技能评级中,Vue.js 的排名并不高。我估计这有几点原因。首先,很多公司还没有准备好将产品迁移到 Vue.js 而放弃他们目前很稳定、常规的前端解决方案。其次,可能有些用人单位想要让员工在工作过程中学习 Vue.js,所以他们在招聘要求里并没有提到这个词。

无论如何,基于全球范围内的调研,Vue.js 是十分流行的——28.8% 的受试者在 JavaScript 2018 问卷调查中使用 Vue.js,并表示愿意再次使用它。另外一个有趣的结论是:34% 的受试者在同一份问卷中表示使用过 Angular,但不愿意再次使用。然而,这并不表示这三种技术(React,Angular 或 Vue.js)中的任意一个会举手投降。选择哪种前端框架取决于很多因素,如项目的规模、架构以及企业特征。

对于 GraphQL 来说同样如此。虽然它在表中排名并不靠前,但确实增长飞快。在 2018 年 Node.js 用户调查问卷中,21% 的受试者已经在工作中使用它了。2018 年 4 月 30 日,52 个用户下载了 Apollo(GraphQL 的客户端)。而在此后正好一年的时间里,有 10794 个用户下载了它。

在编译工具方面,也有一个很有趣的竞争关系:Parcel 和 Webpack。2018 年 JavaScript 新星调查中显示,Parcel 越来越流行,其热度已经逐渐超过了 Webpack。然而,虽然 Parcel 具有几个很有吸引力的内置功能,如开箱即用的配置、开发服务器和热模块替换,它仍然没有取代优秀的 Webpack。在 JS 2018 问卷调查中,超过 16000 名受试者使用 Webpack 来编译他们的项目。而在我们的调查中,300 份招聘说明中没有见到 Parcel 的影子。

调查链接:

3. 专家对 JS 开发未来趋势的看法

对我来说,React 将在未来几年保持强势地位。 GraphQL 也是如此,而 REST API 将会下降。另外,TypeScript 可能超过 ECMAScript。至于新术语,我认为最终能够看到 ReasonML、Parcel 和 Design Systems 的技能等级。 (但也许不到 2020 年就能看到)。

还有一个观察 - 我认为 Redux 将在未来五年内下降,因为开发人员正在积极研究前端的替代方法。

——JuhoVepsäläinen,SurviveJS、React Finland 创始人,蓝箭奖得主。
Twitter:https://twitter.com/bebraw
个人网站:https://survivejs.com/

此列表显示了 JavaScript 生态系统中 React、Angular 和 Node.js 等前端框架的持续优势。优势很可能会持续下去,并且我建议开发人员深入学习这些框架中的至少一个。TypeScript 和 GraphQL 也在不断增长,并且可能会继续增长。

对于后端工程师,Node.js 的普及率持续上升。但是,许多公司仍然希望 JavaScript 开发人员能够使用 Java 和 Python 等语言来处理多语言环境。列表的其余部分证明将 JavaScript 作为一种语言是不够的。另外,使用 Git、CI 和 TDD 等常见的行业惯例是必须的。

——Kevin Ball,Web 前端顾问、培训师,ZenDev 创始人。
Twitter:https://twitter.com/kbal11
博客:https://zendev.com/blog.html

Express.js 居然没有在这个图表中排名靠前,我很惊讶,怎么说它也是编写 Node.js 后端应用程序的主要框架。也许这是因为大多数 JavaScript 的职位都是针对前端开发人员的,但技术本身绝对不是不受欢迎的。

至于前端领域,我认为 React 将长期保持其主导地位。该框架可以快速响应用户的需求,定期将新想法推向市场,并得到了 Facebook 的大力支持。 TypeScript 是另一个大趋势——我想在 3 年内,如果不使用 TS,我们将看不到任何大项目。由于它与 React 密切相关,因此这两种技术将继续繁荣发展。

现在亟待改变的是项目建设过程的复杂性。更有可能的是,我们很快就会看到这个问题的有效解决方案,例如 codesandbox 或 Parcel。

总的来说,JavaScript 已经成为一种“成熟”且稳定的语言,所以我认为我们不会在很近的将来观察到激烈的“技术战”。

——Denis Radin,FocusReactive 技术主管。
Twitter:http://twitter.com/pixelscommander
GitHub:http://github.com/pixelscommander

JavaScript 号称“快速移动的语言”,拥有极高声誉,每周都会有一个新的框架出现。虽然这曾经是真实的,但它肯定会放慢速度,尽管最近我们已经看到了更多像 Gatsby 这样的“框架的框架”。

深入理解 ES6 中的基础语法非常重要。了解 JavaScript 的解释方式以及各种浏览器的局限性也很重要。最后,PWA 和服务工作者的崛起也值得关注。 JavaScript 应用程序的潜在市场遍布全球,了解如何为这些客户构建是至关重要的。

——Laurie Barth,演讲家、博主、教师,Ten Mile Square Technologies 顾问。
Twitter:https://twitter.com/laurieontech
博客:https://dev.to/laurieontech
个人网站:https://laurieontech.com/

从我们在 Cypress.io 的需求来看,GraphQL + TypeScript 占据了 2020 年所需技能的列表。另外,我预测像 Next.js、Nuxt.js 和 Gatsby.js 这样的混合框架将占据很大一部分项目,因此 JavaScript 开发人员必须了解这些工具。

——Gleb Bahmutov,Cypress.io 工程副总裁。
Twitter:https://twitter.com/bahmutov
个人网站:https://gleb.dev/

JavaScript 生态系统不断增长,而且可能会让人不堪重负。但是,我认为这是学习和扩展自己知识的好机会。同时,它是语言演变的一个重要标志。拥有 React.js 和 Node.js 对你的简历来说是一个巨大的优势,也是获得体面工作的关键点之一。

——Tanya Butenko,Hireup(澳大利亚)软件工程师,Muses Code JS Inc. 创始人兼首席执行官。
Twitter:https://twitter.com/ButenkoMe
个人网站:https://musescodejs.org/

总的来说,现在是成为 JavaScript 开发者的最佳时机。 JS 及其框架位于全球最受欢迎、使用最广泛的技术榜榜首。虽然框架之间的战斗异常激烈,JS 的常用工具集却非常稳定,因此你可以专注于利用喜欢的技术,而不用非要选择类似框架。

本文转载自:框架的游戏:2019 年 JavaScript 流行趋势

英文原文:https://hackernoon.com/game-of-frameworks-javascript-trends-of-2019-1a303fa3aaa7

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

推荐阅读更多精彩内容