React和Vue谁会淘汰谁?

简介: 讨论**React和Vue谁会淘汰谁?**这个问题,就像10年前,一个康师傅信徒和一个统一信徒争论:

在我的技术群里大家经常会聊一些宏观的技术问题,就比如:

Vue和React,最终谁会被淘汰?

这样的讨论,到最后往往会陷入技术的细枝末节的比较,比如:

对比两者响应式的实现原理
对比两者的运行时性能

很多程序员朋友,会觉得:

技术问题,就应该从技术的角度找到答案

但实际上,一些大家纠结的技术问题,往往跟技术本身无关。
欢迎加入人类高质量前端框架研究群,带飞
谁才是框架的最终赢家?
讨论React和Vue谁会淘汰谁?这个问题,就像10年前,一个康师傅信徒和一个统一信徒争论:

哪家泡面企业最终会被淘汰呢?

他们把争论的重点放在口味的对比、面饼分量的对比等等,最终谁也无法说服谁。
实际我们最后知道了,外卖App的崛起,对泡面企业形成了降维打击。
回到框架这个问题上,在前端框架流行之前,前端最流行的开发库是jQuery,他是命令式编程的编程范式。
取代jQuery的并不是另一个更优秀的jQuery,而是声明式编程的前端框架。
同样的,取代前端框架的,不会是另一个更优秀的前端框架,而是另一种更适合web开发的编程范式。
那在前端框架这个领域内部,React和Vue最终谁会淘汰谁呢?
我的答案是:

谁也不会淘汰谁。

任何框架最核心的竞争力,不是性能,也不是生态是否繁荣,而是开发者用的是否顺手,也就是开发模式是否合理。
React发明了JSX这种开发模式,并持续教育了开发者3年,才让社区接受这种开发模式
这种发明开发模式,再教育开发者的行为,也只有meta这种大公司才办得到。
而Vue则直接使用了模版语法这种现成的开发模式。这种模式已经被广大后端工程师验证过是最好上手的web开发模式。
所以像后端工程师或者编程新人会很容易上手Vue。
经过多年迭代,他们各自的开发模式已经变成了事实上的前端框架DSL标准。
这会为他们带来两个好处:

开发模式是个主观偏好,不存在优劣

所以他们谁也无法淘汰谁,只能说React的开发模式受众范围更广而已。

后来者会永远居于他们的阴影之下

新的框架如果无法在编程范式上突破,那么为了抢占Vue或React的市场份额,只能遵循他们的开发模式,因为这样开发者才能无痛迁移。
比如最近两年比较优秀的新框架,svelte是Vue的开发模式,Solid.js
是React的开发模式
在同样的开发模式下,占市场主导地位的框架可以迅速跟进那些竞争者的优秀特性。
比如Vue就准备开发一个类似Svelte的版本。
一句话总结就是:

你是无法在我的BGM中击败我的

总结
总体来说,在新的web编程范式流行之前,React、Vue还会长期霸占开发者喜欢的前端框架前列。
在此过程中,会出现各种新框架,他们各有各的特点,但是,都很难撼动前者的地位。

相关文章
|
9天前
|
JavaScript 前端开发 测试技术
React和Vue的性能对比如何?
需要注意的是,性能不仅仅取决于框架本身,还与开发者的代码质量、架构设计以及项目的优化程度等密切相关。因此,在评估性能时,应该综合考虑多个因素,而不是仅仅局限于框架之间的比较。
60 1
|
15天前
|
JavaScript 前端开发 算法
React 框架和 Vue 框架的区别是什么?
React框架和Vue框架都是目前非常流行的前端JavaScript框架,它们在很多方面存在区别
|
28天前
|
前端开发 JavaScript 开发者
React与Vue:前端框架的巅峰对决与选择策略
【10月更文挑战第23天】React与Vue:前端框架的巅峰对决与选择策略
|
28天前
|
前端开发 JavaScript 数据管理
React与Vue:两大前端框架的较量与选择策略
【10月更文挑战第23天】React与Vue:两大前端框架的较量与选择策略
|
28天前
|
JavaScript 前端开发 算法
在性能上,React和Vue有什么区别
【10月更文挑战第23天】在性能上,React和Vue有什么区别
18 1
|
2月前
|
JavaScript 前端开发 算法
前端优化之超大数组更新:深入分析Vue/React/Svelte的更新渲染策略
本文对比了 Vue、React 和 Svelte 在数组渲染方面的实现方式和优缺点,探讨了它们与直接操作 DOM 的差异及 Web Components 的实现方式。Vue 通过响应式系统自动管理数据变化,React 利用虚拟 DOM 和 `diffing` 算法优化更新,Svelte 通过编译时优化提升性能。文章还介绍了数组更新的优化策略,如使用 `key`、分片渲染、虚拟滚动等,帮助开发者在处理大型数组时提升性能。总结指出,选择合适的框架应根据项目复杂度和性能需求来决定。
|
3月前
|
前端开发 JavaScript UED
react或者vue更改用户所属组,将页面所有数据进行替换(解决问题思路)____一个按钮使得页面所有接口重新请求
在React或Vue中,若需在更改用户所属组后更新页面所有数据但不刷新整个页面,可以通过改变路由出口的key值来实现。在用户切换组成功后,更新key值,这会触发React或Vue重新渲染路由出口下的所有组件,从而请求新的数据。这种方法避免了使用`window.location.reload()`导致的页面闪烁,提供了更流畅的用户体验。
57 1
react或者vue更改用户所属组,将页面所有数据进行替换(解决问题思路)____一个按钮使得页面所有接口重新请求
|
28天前
|
前端开发 JavaScript 开发者
React与Vue:前端框架的巅峰对决与选择策略
【10月更文挑战第23天】 React与Vue:前端框架的巅峰对决与选择策略
|
28天前
|
JavaScript 前端开发 数据管理
React和Vue的优缺点
【10月更文挑战第23天】React和Vue的优缺点
19 0
|
28天前
|
开发框架 JavaScript 前端开发
React和Vue之间的区别是什么
【10月更文挑战第23天】React和Vue之间的区别是什么
14 0