生成式AI领域的最新成果都在这里!抢 QCon 展区门票 了解详情
写点什么

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

  • 2019-05-17
  • 本文字数:3455 字

    阅读完需:约 11 分钟

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

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


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


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

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

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



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

主要收获

在我们的评级中没有被展示出的非 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 的影子。


调查链接:


专家对 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 的常用工具集却非常稳定,因此你可以专注于利用喜欢的技术,而不用非要选择类似框架。


英文原文:


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



公众号推荐:

2024 年 1 月,InfoQ 研究中心重磅发布《大语言模型综合能力测评报告 2024》,揭示了 10 个大模型在语义理解、文学创作、知识问答等领域的卓越表现。ChatGPT-4、文心一言等领先模型在编程、逻辑推理等方面展现出惊人的进步,预示着大模型将在 2024 年迎来更广泛的应用和创新。关注公众号「AI 前线」,回复「大模型报告」免费获取电子版研究报告。

AI 前线公众号
2019-05-17 18:008208

评论

发布
暂无评论
发现更多内容

在AI时代,提升程序员竞争力的关键策略

不在线第一只蜗牛

人工智能 编程 程序员 AI

足球盘口数据获取:API接口与数据采集的权衡之道

软件开发-梦幻运营部

公司让我开发一个管理系统,有了它,So easy!

互联网工科生

软件开发 低代码 快速开发 JNPF

VPC终端节点的实现架构和原理

天翼云开发者社区

VPC终端节点

特权账号管理之定期改密篇

尚思卓越

网络安全 定期改密

重磅!科技感拉满!

天翼云开发者社区

人工智能 云计算

RestCloud AppLink已支持的数据源有哪些?

RestCloud

零代码 APPlink 自动化集成

正式开源!网易有道上线“易魔声”语音合成引擎

有道技术团队

人工智能 语音合成 TTS

同济 MBA × 和鲸:聚焦商业数据思维培养,赋能工管人才转型升级

ModelWhale

人才培养 企业数字化转型 数智化 MBA 同济大学

Kubernetes Operator可以做什么?

高端章鱼哥

kubernetes 运维

常见光模块的封装类型有哪些?

小魏写代码

重磅!天翼云发布一站式智算服务平台“慧聚”

天翼云开发者社区

人工智能 云计算 云服务 云平台

紧密合作三周年,Elastic颁发腾讯云2022年杰出开源贡献奖

腾讯云大数据

ES

英特尔锐炫GPU助力AI向大众用户市场普及

E科讯

DAZ Studio for Mac(专业三维人物动画制作工具) 4.20.0.17永久激活版

mac

苹果mac Windows软件 DAZ Studio 3D造型渲染软件

崩溃的阿里云,并非是单纯的坏事?

ToB行业头条

全域全自主建设,亚信科技AntDB数据库助力广电5G业务上线运行

亚信AntDB数据库

数据库 AntDB AntDB数据库

低代码平台如何提高开发效率?

高端章鱼哥

软件开发 低代码 JNPF

Util应用框架基础(六)- 日志记录 - Seq

何镇汐

开源 后端 软件开发

Util应用框架基础(六)- 日志记录 - Exceptionless

何镇汐

开源 后端 软件开发

数据结构与算法 | 记忆化搜索(Memorize Search)

不在线第一只蜗牛

数据结构 算法 数据

云图说|华为云主机安全新版本上线

华为云开发者联盟

华为云 华为云开发者联盟 华为云云图说

Layer 2 真的为以太坊扩容了吗?

Footprint Analytics

以太坊 Layer 2

聚势启新,KaiwuDB 生态联盟沙龙首站落地长春

KaiwuDB

文心一言 VS 讯飞星火 VS chatgpt (134)-- 算法导论11.2 6题

福大大架构师每日一题

福大大架构师每日一题

为什么 Amazon Bedrock 中的模型只有部分可用?

花花

亚马逊云科技

时序数据库 TDengine + 高级分析软件 Seeq,助力企业挖掘时序数据潜力

TDengine

tdengine 时序数据库

探索向量数据库 | 重新定义数据存储与分析

-亦世凡华、

数据库 亚马逊云科技 向量数据库

Docker 和 Kubernetes:技术相同和不同之处

EquatorCoco

Docker k8s K8s 多集群管理 kubernetes 运维

「我在淘天做技术」假如你五行属商家,如何算好账?

阿里技术

财务 算好账 财务开发

在HarmonyOS上实现ArkTS与H5的交互

HarmonyOS开发者

HarmonyOS

框架的游戏:2019年JavaScript流行趋势_语言 & 开发_Andrew Stetsenko_InfoQ精选文章