写点什么

React 社区分裂为全栈和仅客户端两大阵营

  • 2024-08-01
    北京
  • 本文字数:1205 字

    阅读完需:约 4 分钟

大小:611.34K时长:03:28
React 社区分裂为全栈和仅客户端两大阵营

最新的“React 现状”调查显示,虽然一些开发人员正在积极利用 React 服务器组件等重要新特性,但其他人仍在坚持使用其最初设计的传统 SPA(单页应用程序)。

 

软件工程师和 React 教育者 Josh W. Comeau 在调查结论中预测,“到 2028 年,将有两个都被广泛使用,使用量大致相当的 React 版本同时存在,一个是‘全栈’版本,带有服务器组件和服务器动作,另一个是仅限客户端的单页应用程序(SPA)版本。”

 

他的结论基于一份对 13,000 名受访者报告的服务器组件和服务端渲染使用情况的调查。29% 的人使用过服务器组件,其中超过一半的人表示希望再次使用它们。63% 的受访者使用了服务端渲染(SSR),但从 Comeau 的角度来看,“37% 的受访者从未使用过 SSR,尽管它已经存在十多年了。”

 

相比之下,86% 的用户将 React 用于 SPA,只有 27% 的人将 React 用于多页应用程序。请注意,与本次调查中的大多数数字一样,由于受访者可以选择多个选项,因此百分比总和超过 100。

 

调查作者指出,数据是在 2023 年 10 月 27 日至 11 月 15 日之间收集的,即 React 19 发布之前,而且由于服务器组件仅在 Vercel 的 Next.js 环境中得到了全面支持,因此 29% 的采用率可以说令人印象深刻。服务器组件也是开发人员最感兴趣的新特性列表中的佼佼者,占 40%,其次是新文档(31%)和 React 缓存(30%)。

 

Next.js 也是基于 React 的框架列表中的热门,76.3% 的受访者在使用它,并且普遍对其持积极态度。没有其他框架能与之匹敌,除非算上原始(和已弃用的)的 Create React App——91.7% 的人曾使用过它,但只有 13% 的人打算再用一下。Astro 正在蓬勃发展,18.8% 的人使用过它,其中三分之二的人希望继续使用。

 

React 用户在哪里托管他们的应用程序?根据这项调查,Vercel 是首选(59%),其次是 AWS(53%)、GitHub Pages(42%)和 Netlify(41%)。我们怀疑这在一定程度上反映了最了解这项调查并有动力完成调查的社区中的看法,而不是所有的 React 用户的意见,但尽管如此,这还是会加深一些人的质疑,他们认为 Vercel 对 Next.js 和 React 的控制太深了。

Vercel 在受访者选择的基于 React 的应用程序托管目的地列表中名列前茅

 

React 是否太复杂?证据好坏参半。调查中发现的被认为“过度复杂”的痛点中,9% 的人提到主要 API,7% 的人提到钩子,12% 的人提到新 API。不过这些都不是最大的痛点。开发人员在 fowardRef、memo、useEffect 和(不出所料)服务器组件等特性上遇到了更多困难。

 

另一个值得注意的统计数据是,大多数开发人员(89%)继续使用 webpack 构建 React 应用程序,其次是 Vite(82%)、esbuild(52%)和 Rollup(42%)。只有 29% 的人使用过 Turbopack,这是用 Rust 构建的 webpack 的替代品。

 

完整调查在这里(https://2023.stateofreact.com/)。

 

原文链接:https://devclass.com/2024/07/22/react-community-splitting-into-full-stack-and-client-only-camps-suggests-survey/

2024-08-01 12:048141

评论

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

【微积分的力量】芝诺悖论

LeifChen

8月日更 微积分 芝诺悖论

手撸二叉树之二叉树的层平均值

HelloWorld杰少

数据结构与算法 8月日更

vue入门:element组件与动画使用

小鲍侃java

8月日更

方法调用:一看就懂,一问就懵?

阿Q说代码

8月日更 虚方法 非虚方法 静态分派 动态分派

Vue进阶(四十七):面试必备:2021 Vue经典面试题总结(含答案)

No Silver Bullet

面试 Vue 8月日更

Linux之alias命令

入门小站

Linux

【Flutter 专题】62 图解基本 Button 按钮小结 (二)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 8月日更

LeetCode题解:2. 两数相加,迭代,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

是时候封装限制 UITextField、UITextView 的最大字符长度了

fuyoufang

swift iOS 知识体系 8月日更

Vue进阶(四十八):Vue.js 2.0 移动端拍照压缩图片预览及上传

No Silver Bullet

Vue 8月日更

想知道你未来宝宝长什么样吗?

华为云开发者联盟

modelarts 图像 图像生成 父母照片 照片

架构训练营模块四作业

高铎

架构实战营

面试侃集合 | LinkedBlockingQueue篇

码农参上

队列 Queue 8月日更

埋土灰

箭上有毒

8月日更

图解:为什么非公平锁的性能更高?

王磊

Java 8月日更

数字化为企业带来哪些价值?

boshi

数字化转型

Python代码阅读(第14篇):列表求并集

Felix

Python 编程 Code Programing 阅读代码

SpringBoot 自动装配源码解析

Rubble

8月日更

架构训练营模块二作业

高铎

架构实战营

DCS_FunTester分布式压测框架更新(三)

FunTester

分布式 性能测试 测试框架 测试开发 FunTester

快手处罚恶意炒作、审丑卖惨类账号,不良自媒体违背公序良俗

石头IT视角

数据传输过程的序列化,你了解吗

卢卡多多

序列化 8月日更

Springboot+quartz源码探索

4ye

Java 后端 springboot quartz 8月日更

架构训练营模块三作业

高铎

再谈安全架构《一》

I

读书笔记 方法论 安全架构 企业安全 安全建设

微博评论高性能高可用架构设计

tjudream

高可用架构 微博评论 高性能计算架构 多级负载均衡 多级缓存

【LeetCode】反转字符串 IIJava题解

Albert

算法 LeetCode 8月日更

BPM敏捷Activiti开发平台,工作流引擎springboot整合activiti

金陵老街

Java MySQL Vue springboot Activiti

sql task2 基础查询与排序

橙橙橙橙汁丶

【设计模式】模板方法模式

Andy阿辉

C# 后端 设计模式 8月日更

ASCII对照表

入门小站

工具

React 社区分裂为全栈和仅客户端两大阵营_架构/框架_Tim Anderson_InfoQ精选文章