React和Vue誰會淘汰誰?

語言: CN / TW / HK

大家好,我卡頌。

在我的技術群裡大家經常會聊一些巨集觀的技術問題,就比如:

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.jsReact的開發模式

在同樣的開發模式下,佔市場主導地位的框架可以迅速跟進那些競爭者的優秀特性。

比如Vue就準備開發一個類似Svelte的版本。

一句話總結就是:

你是無法在我的BGM中擊敗我的

總結

總體來說,在新的web程式設計正規化流行之前,ReactVue還會長期霸佔開發者喜歡的前端框架前列。

在此過程中,會出現各種新框架,他們各有各的特點,但是,都很難撼動前者的地位。