【ArchSummit架构师峰会】基于大模型的基础框架、中台、应用层等专题全覆盖 >>> 了解详情
写点什么

框架的游戏: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



公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2019-05-17 18:008224

评论

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

分布式存储中间件(1):10000字把Redis扒个干净,一发入魂

北游学Java

Java 数据库 redis 分布式

百度商业大规模微服务分布式监控系统——凤睛

百度Geek说

数据库 分布式 微服务 大前端 监控

Linux内核源码分析:基于最新的Linux 4.0内核(学习路线总结)

Linux服务器开发

后端 Linux内核 内核源码 内核4.0 底层原理

Java-技术专题-同步可见性的查缺补漏

洛神灬殇

JVM happens-before CAS 可见性 有序性

分布式作业系统 Elastic-Job-Lite 源码分析——作业失效转移

比伯

Java 编程 架构 互联网 技术宅

ElasticSearch

云淡风轻

elasticsearch

为打造更好移动生态:日活超1.2亿的百度知道,摊牌了

ToB行业头条

百度 百度知道

北京天源迪科亮相2021年企业数字化转型峰会暨山东CIO智库年会

DT极客

Spark地基之RDD

正向成长

spark RDD

Flink在唯品会的实践

Apache Flink

flink

你公司有没有企业文化?

石云升

团队建设 28天写作 职场经验 管理经验 4月日更

爆肝1W+字,通俗易懂的讲解下Java注解

AI乔治

Java 架构 面试 注解

一种自适应混合域音频无声水印

行者AI

音频

周转箱在仓配业务中的应用

陈俊

移动开发iOS工程师秘籍(全套七层)

程序员 移动开发 ios开发

Github瞬间爆火!被各大厂要求直接下架的面试题库也太全了

Java 编程 程序员 架构 面试

聪明人的训练(二十七)

Changing Lin

4月日更

电脑护眼不权威指南,年纪轻轻眼睛就不行了?

彭宏豪95

效率 windows 4月日更 护眼

iOS 面试策略之语言工具-Objective-C

iOSer

ios objective-c 程序员

Golang 性能分析

escray

学习 极客时间 Go 语言 4月日更

什么是低代码开发?低代码11大核心功能介绍!

优秀

低代码

commons-pool2 池化技术探究

vivo互联网技术

Java common-pool2 池化技术

智慧公安情指勤指挥调度平台搭建,指挥中心平台搭建

实至名归!DataPipeline斩获“银行数字化科技创新大奖”

DataPipeline数见科技

直播系统聊天技术(四):百度直播的海量用户实时消息系统架构演进实践

JackJiang

架构设计 即时通讯 IM 直播技术

开源新老兵携手打开社区大门,带大学生走近开源

DT极客

送给你一份程序员大佬整理的 HTTP 基础知识大图

Java架构师迁哥

Javac 源码调试教程

学Java关注我

Java 编程 程序员 架构 计算机

B站视频下载:如何下载B站视频到电脑上

科技猫

B站 分享 哔哩哔哩 视频处理 b站视频下载

道相同、谋相通、人相守:华为副总裁周跃峰分享如何与用户精英共创数字基建

脑极体

网络协议学习笔记 Day6

穿过生命散发芬芳

网络协议 4月日更

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