3
头图

大家好,我卡颂。

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

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

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

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

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

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

但实际上,一些大家纠结的技术问题,往往跟技术本身无关。

欢迎加入人类高质量前端框架群,带飞

谁才是框架的最终赢家?

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

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

他们把争论的重点放在口味的对比面饼分量的对比等等,最终谁也无法说服谁。

实际我们最后知道了,外卖App的崛起,对泡面企业形成了降维打击。

回到框架这个问题上,在前端框架流行之前,前端最流行的开发库是jQuery,他是命令式编程的编程范式。

取代jQuery的并不是另一个更优秀的jQuery,而是声明式编程的前端框架。

同样的,取代前端框架的,不会是另一个更优秀的前端框架,而是另一种更适合web开发的编程范式。

那在前端框架这个领域内部,ReactVue最终谁会淘汰谁呢?

我的答案是:

谁也不会淘汰谁。

任何框架最核心的竞争力,不是性能,也不是生态是否繁荣,而是开发者用的是否顺手,也就是开发模式是否合理

React发明了JSX这种开发模式,并持续教育了开发者3年,才让社区接受这种开发模式

这种发明开发模式,再教育开发者的行为,也只有meta这种大公司才办得到。

Vue则直接使用了模版语法这种现成的开发模式。这种模式已经被广大后端工程师验证过是最好上手的web开发模式。

所以像后端工程师或者编程新人会很容易上手Vue

经过多年迭代,他们各自的开发模式已经变成了事实上的前端框架DSL标准。

这会为他们带来两个好处:

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

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

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

新的框架如果无法在编程范式上突破,那么为了抢占VueReact的市场份额,只能遵循他们的开发模式,因为这样开发者才能无痛迁移。

比如最近两年比较优秀的新框架,svelteVue的开发模式,Solid.js
React的开发模式

在同样的开发模式下,占市场主导地位的框架可以迅速跟进那些竞争者的优秀特性。

比如Vue就准备开发一个类似Svelte的版本。

一句话总结就是:

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

总结

总体来说,在新的web编程范式流行之前,ReactVue还会长期霸占开发者喜欢的前端框架前列。

在此过程中,会出现各种新框架,他们各有各的特点,但是,都很难撼动前者的地位。


卡颂
3.1k 声望16.7k 粉丝