您的位置:首页 > Web前端 > React

【第1167期】npm 2017 JavaScript 框架报告之 React 生态系统分析

2018-01-13 00:00 369 查看
前言这几天冻坏了。2018年才过去两周,针对关于2017年的前端行业总结不少,那今天带来是大家都很熟悉的npm社区的总结。今日早读文章由@局长翻译分享。正文从这开始~前两天,我们报道了 npm 2018 年的第一个 JavaScript 现状报告的第一部分,该部分讲述了 2017 前端框架的现状,我们也从中看到在前端框架领域 React 的主导地位。今天,npm 发布了报告的第二部分 —— 对强大的 React 的生态系统进行了分析。来看看与 React 有关的软件包的生态系统。

刚开始 Facebook 构建 React 时,许多这些软件包来自开源社区的第三方。这些软件包使用 React 并为其补充功能以提供完整的应用程序体验。它们中有几个都提供了类似的功能,彼此竞争。React Router

丰富的 Web 应用程序都有一个共同特点,那就是提供多个“路由”,这些“路由”本质上是不同的功能块,在浏览器中表示为单独的 URL。React 不需要为简单的应用程序使用路由,路由有时会用在桌面和移动应用程序等环境中,而它并不是必需的。因此,React Router 虽然是最受欢迎的 React 应用程序路由解决方案,但使用量却只有 React 本身的一半。这是我们从 React 学到的一部分:通过将自己限制在一个明确定义的问题领域并具有明确定义的接口,它使其本身可以应用于比原始设计者更广泛的应用范围。这个决定增加了开发者在 React 上的使用和工作频率,进一步改进了 React,并扩展了它的生态系统,创造了一个有益的循环。这是一个令人惊讶的结果,因为作为一个部分的解决方案,React 本质上不如 Ember 和 Angular 这样的完整框架使用起来方便。Flux

在一个完整应用程序中,React 未解决的一个部分是数据层。当年 Facebook 推出 React 时,还推出了Flux(一种管理应用程序中的状态的方法)和 GraphQL(一种用于在客户端和服务器之间进行通信的系统)。不过两者都不如 React 本身流行。Flux 在 React 发布之后不久就被推出,直到 2015 年中才得到普及,但是 2015 年中期之后,它们的轨迹发生了很大的分化,Flux 的受欢迎程度在缓慢下滑。Redux

Flux 没落的一个解释是 Redux 的崛起。针对应用程序,Redux 和 Flux 提供了相同的功能,但给开发者带去了不同的体验,Redux 于 2015 年中期推出,迅速发展并超过了 Flux,而 Flux 则在同一时间开始下滑。Redux 现在几乎和 React Router 一样流行,而且两者紧密地相互追随,并且越来越受欢迎。这表明 Redux 已经取代 Flux,成为 React 网络应用程序的首选状态管理系统。MobX

MobX 于 2016 年年中推出,是 Flux 和 Redux 的竞争对手。目前它正在快速增长,但仍然是这个领域的“萌新”,不过值得关注。RxJS

React 生态中很奇怪的一个项目 RxJS,它是另一个与 Flux 和 Redux 竞争的状态管理组件。RxJS 的流行不容易追踪和解释。首先,它现存有两个版本,一个是传统版本
rx
,一个是当前版本
rxjs
。这两个下载量都很大,虽然
rx
在下降,而
rxjs
在增长。RxJS 的使用似乎是作为其他项目的子依赖,特别是 Angular CLI 的驱动。这意味着所有使用 Angular 的驱动器都使用相同的 RxJS。它也被合并到其他一些流行的命令行工具中。GraphQL

虽然它和 React 一样,在 Facebook 内部开发并同时发布,但 GraphQL 与 React 并没有内在的联系;它只是 Web 客户端查询服务器数据的一种方式。它通过名为 Relay 和 Apollo 这两个具有竞争性的库获得了流行,这两个库提供了一个 Web 应用程序,用于便捷生成 GraphQL 和管理数据流。Relay 发布得比较早,并且正在增长,但是已经被半年后发布的 Apollo 超越,Apollo 已经越来越受欢迎,并且增长速度明显加快。虽然 Apollo 的绝对数量还很小,但是它的增长轨迹值得深入挖掘。React 生态系统总结

再看看过去 12 个月的增长,我们可以看到相关软件包在 React 生态系统中的相对位置。趋势也变得清晰:Apollo 正在快速增长
Flux 在慢慢没落
React Router 和 Redux 都非常受欢迎,并且在使用中紧密联系,所以我们将它们放在了一起
MobX 有着良好的增长,但尚未能挑战 Redux 的地位
React 本身就十分庞大
最后,关于2017行业总结报告【第1154期】2017 年 JavaScript 发展状况回顾【第1152期】2017 JavaScript 调查报告概述【第1144期】2017前端技术发展回顾
关于本文
译者:@局长
译文:https://www.oschina.net/news/92299/the-state-of-javascript-frameworks-2017-the-react-ecosystem
作者:@Laurie Voss
原文:https://www.npmjs.com/npm/the-state-of-javascript-frameworks-2017-part-2-the-react-ecosystem

【视频教程】webpack3.x视频教程 全网首发
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: