愛鋒貝

標(biāo)題: 前端框架真相 | 為什么前端不能放棄React? [打印本頁]

作者: 科技Party    時(shí)間: 2023-1-11 16:09
標(biāo)題: 前端框架真相 | 為什么前端不能放棄React?
昨天我學(xué)前端的表弟突然問我:哥,我可不可以不學(xué)React???我感覺Vue夠用了!
我**上去就是一B兜,還想不想好好干了?不想好好干前端,你就直說,還想放棄React,人家都是擔(dān)心劍未佩妥,轉(zhuǎn)身已是江湖。你倒好,劍都不帶,直接殺上梁山!怎么?明知山有虎,偏向虎山行!那你也得看看自己叫不叫武松?。看罄?!是不是又該吃藥啦?

(, 下載次數(shù): 8)
老弟,哥今年搞前端第9個(gè)年頭,馬上“前端九年義務(wù)教育”就要畢業(yè),負(fù)責(zé)任的告訴你,react那可是前端賺大錢的標(biāo)配。今天我就給你念叨念叨,為什么前端不能放棄React?
1、 從市場流行度來看

React是企業(yè)項(xiàng)目開發(fā)流行框架之一,不學(xué)React,等于自斷一臂?,F(xiàn)在市場上也就兩個(gè)流行框架:一個(gè)Vue,一個(gè)React。其他的我們先不討論。你上來先放棄一半,半壁江山。直接損失一個(gè)“汪峰”,難怪你上不了頭條。之后我們?nèi)轿宦敿?xì)說······
2、從大廠技術(shù)選型來看

React 是大廠的選擇,也是我們進(jìn)大廠的選擇。
首先不跟你多BB,看圖,我們直接看大廠都在用什么技術(shù)。
序號公司名技術(shù)棧
1阿里react
2快手react
3嗶哩嗶哩react
4北京小米react
5北森云計(jì)算react
6北京云智慧react
7北京鷹瞳科技react
8北京隨行付支付有限公司react
9北京靈動科技react
10杭州鑫蜂維react
11北京美圖react
12杭州阿信網(wǎng)絡(luò)react
13杭州小碼教育react
14北京口袋財(cái)富react
15北京醫(yī)點(diǎn)通react
16北京火花思維react
17上海攜程react
18北京神策數(shù)據(jù)react
19杭州求是微脈react
20美餐react
21北京北極數(shù)據(jù)react
22美團(tuán)react 居多
23騰訊react 居多
24網(wǎng)易react,vue都有
25百度react,vue也有
26北京老虎集團(tuán)react,低代碼平臺
27小紅書vue
28北京好未來vue
29北京藍(lán)色光標(biāo)vue
30北京鯨準(zhǔn)數(shù)服科技vue
31北京閃電快車vue
32北京信征信息vue
33北京千帆閱文vue
34北京自如vue
35北京伴魚vue
36北京農(nóng)信互聯(lián)vue
37北京必要科技vue
38北京曠視科技vue
39北京新橙科技vue
40北京小藥藥vue
41杭州尚尚簽vue
42北京云知聲智能科技vue
43北京藍(lán)湖vue
44北京醫(yī)渡云vue
45蘇州同城旅行vue
46北京汽車之家vue
47北京友通上昊(醫(yī)療)vue
48北京深睿醫(yī)療vue,react,qiankun
49北京新東方vue,react都有
50聯(lián)想vue,react都有
51北京零氪vue,vue3
52北京美菜網(wǎng)vue,也有react
53北京點(diǎn)石經(jīng)緯vue3
54網(wǎng)易vue和react都有
55新浪vue和react都有
56360vue和react都有,vue居多
57滴滴大部分 react,少數(shù)vue
58用友大部分是react,也有vue
5958分產(chǎn)品線,react居多,vue,js也有
60字節(jié)基本都是react,vue非常少
停下來?。。。。。。。。。。。?!

(, 下載次數(shù): 8)
我就知道你沒有好好看完表格,直接滑下來的!
那我告訴你,根據(jù)各公司招聘信息,梳理的60家公司項(xiàng)目開發(fā),前端技術(shù)棧的框架使用情況。其中包括大、中、小廠的信息。從這些數(shù)據(jù)來看:
1、Vue 和 React市場占有率大約各占 50%;
2、一線大廠應(yīng)用React居多,中小公司vue居多。
你能想的出名字的大廠他們都在用React,阿里, 美團(tuán),騰訊,網(wǎng)易,百度,新東方,聯(lián)想,新浪,滴滴,快手,嗶哩嗶哩,小米,美圖,攜程,這些大佬們都在用React,而且React的占比還不在少數(shù)!你告訴我你憑什么說要放棄學(xué)React?不想進(jìn)大廠?不想拿高薪?誰跟錢過不去?如果過不去,那就是不夠多!
3、從薪資水平來看

我們不說那些虛的,直接就是看一波薪資:
北京 React 前端工程師工資收入:

(, 下載次數(shù): 11)
北京 Vue 前端工程師工資收入:

(, 下載次數(shù): 9)
通過查詢的結(jié)果看,在北京,React 崗位的薪資是 Vue 崗位薪資的2倍,大家可以通過自己搜索來查詢其他的城市情況?;镜那闆r是差不多的,這和 React 人才市場缺乏有很大的關(guān)系。
沒有一分錢的工資是白給的, 不學(xué)習(xí) React 工資起點(diǎn)就低了。學(xué)了React工資直接翻一番!你自己看著辦!

(, 下載次數(shù): 7)
4、從技術(shù)背景來看

再說人家React的出身,React JS (以下簡稱React)基本上是一個(gè)由 Facebook 建立和維護(hù)的 JavaScript 庫。妥妥的名門之后,穩(wěn)穩(wěn)的將相之姿。
根據(jù) React 的創(chuàng)建者Jordan Walke 的說法,React是一個(gè)高效、聲明性和靈活的開源 JavaScript 庫,用于構(gòu)建簡單、快速和可擴(kuò)展的Web應(yīng)用前端。
自推出以來,它已經(jīng)在前端開發(fā)領(lǐng)域掀起了一場風(fēng)暴。跟迪迦一個(gè)級別(新的風(fēng)暴已經(jīng)出現(xiàn),怎么能夠停滯不前)。

(, 下載次數(shù): 9)
Stack Overflow 的最新調(diào)查也顯示,React是最受喜愛的網(wǎng)絡(luò)框架,而 Angular 在同一列表中排名第 9。

(, 下載次數(shù): 9)
今天,有超過22萬個(gè)網(wǎng)站使用React。不僅如此,像上面所調(diào)查的,阿里、快手、騰訊、字節(jié)、小米、網(wǎng)易、滴滴等,蘋果、Netflix、Paypal等行業(yè)巨頭也已經(jīng)開始在其項(xiàng)目中使用 React。
5、從技術(shù)本身來看

說完出身,我們還得看看React這孩子本身的資質(zhì)怎么樣!
既然有這么多大廠選擇了React,那他肯定有無可比擬的優(yōu)越性,來看。
5.1、React 用于前端開發(fā)的主要優(yōu)點(diǎn)

讓我們看看 React 的主要優(yōu)點(diǎn),了解它為什么從其他前端開發(fā)框架中脫穎而出。
(1)速度

React 基本上允許開發(fā)者在客戶端和服務(wù)器端,利用其應(yīng)用程序的各個(gè)部分,這最終提高了[開發(fā)過程](about:blank)的速度。
簡單地說,不同的開發(fā)者可以編寫單獨(dú)的部分,所有的改變都不會導(dǎo)致應(yīng)用程序的邏輯。
(2)靈活性

與其他前端框架相比,React 代碼更容易維護(hù),并且由于其模塊化結(jié)構(gòu)而具有靈活性。這種靈活性反過來又為企業(yè)節(jié)省了大量的時(shí)間和成本。
(3)性能

React 在設(shè)計(jì)時(shí)就考慮到了提供高性能。該框架的核心提供了一個(gè)虛擬 DOM 程序和服務(wù)器端渲染,這使得復(fù)雜的應(yīng)用程序運(yùn)行得非常快。
擴(kuò)展閱讀:[優(yōu)化ReactJS性能的頂級技巧](https://www.peerbits.com/blog/top-performance-optimization-tips-for-react.html)
(4)可用性

如果你有一些基本的 JavaScript 知識,使用React是相當(dāng)容易的。事實(shí)上,一個(gè)專業(yè)的 JavaScript 開發(fā)人員可以在三周內(nèi)輕松地學(xué)會 React 框架的所有內(nèi)涵和外延。
(5)可重用的組件

使用React 的主要好處之一是它有可能重復(fù)使用組件。這為開發(fā)人員節(jié)省了時(shí)間,因?yàn)樗麄儾槐貫橄嗤墓δ芫帉懜鞣N代碼。此外,如果在任何特定的部分做出任何改變,都不會影響應(yīng)用程序的其他部分。
同時(shí),如果你認(rèn)為React只適用于網(wǎng)頁開發(fā),那你就大錯(cuò)特錯(cuò)了! Facebook很早就已經(jīng)升級了該框架,推出了 React Native,用于開發(fā) Android 和 iOS 平臺的移動原生應(yīng)用程序。
5.2、React 可以成為企業(yè)項(xiàng)目開發(fā)最佳選擇的16個(gè)原因

(1)它很容易學(xué)習(xí)
React,與其他流行的前端框架如Angular 和 Vue 相比,更容易學(xué)習(xí)。
事實(shí)上,這也是 React 在短時(shí)間內(nèi)獲得如此大的吸引力的主要原因之一。它幫助企業(yè)快速建立他們的項(xiàng)目。
你看,學(xué)習(xí)某項(xiàng)技術(shù)或框架越難,開始開發(fā)過程所需的時(shí)間就越長。由于 React 是一個(gè)簡單的框架,容易學(xué)習(xí)和開始,企業(yè)和大廠更傾向于使用它。
(2)它有助于建立豐富的用戶界面
今天,一個(gè)應(yīng)用程序的用戶界面的質(zhì)量起著重要的作用。如果用戶界面設(shè)計(jì)得不好,那么它就會降低一個(gè)應(yīng)用程序成功的機(jī)會。因此,建立豐富的用戶界面對于一個(gè)應(yīng)用程序的生存和發(fā)展是必要的。
好消息是,React允許通過它的聲明式組件來構(gòu)建這種高質(zhì)量的、豐富的用戶界面。
(3)它允許編寫自定義組件
React 自帶 JSX,一個(gè)可選的語法擴(kuò)展,這使得編寫我們自己的組件成為可能。
這些組件基本上接受 HTML 引用,也使所有子組件的渲染成為開發(fā)者的愉快體驗(yàn)。
雖然關(guān)于JSX的問題有很多爭論,但它已經(jīng)可以用于編寫自定義組件,構(gòu)建大批量的應(yīng)用程序,并將HTML虛擬結(jié)構(gòu)圖轉(zhuǎn)換為 ReactElement 樹。
(4)它提高了開發(fā)者的生產(chǎn)力
當(dāng)一個(gè)應(yīng)用程序具有復(fù)雜的邏輯,并且一個(gè)組件的單一修改會極大地影響其他組件時(shí),頻繁的更新往往會變成頭疼。為了解決這個(gè)問題,F(xiàn)acebook 通過組件重用性功能擴(kuò)充了 React。
React 中的組件重用性,允許開發(fā)者重新部署相同的組件對象。
這種方法提供了更好的代碼維護(hù)和增長,因?yàn)镽eact中的每個(gè)組件都有自己的內(nèi)部邏輯,這很容易操作,因此,提高了應(yīng)用開發(fā)的生產(chǎn)力。
(5)它提供快速渲染
當(dāng)你建立一個(gè)復(fù)雜的、高負(fù)荷的應(yīng)用程序時(shí),在一開始就定義應(yīng)用程序的架構(gòu)是必須的,因?yàn)樗梢杂绊懩愕膽?yīng)用程序的性能。
簡單地說,DOM模型是樹狀結(jié)構(gòu)的。因此,在較高層次上的一個(gè)小修改會嚴(yán)重影響應(yīng)用程序的用戶界面。為了解決這個(gè)問題,F(xiàn)acebook 推出了一個(gè)虛擬 DOM 功能。
虛擬DOM,顧名思義,是DOM的虛擬表示,允許首先測試對虛擬DOM的所有修改,以計(jì)算每次修改的風(fēng)險(xiǎn)。
因此,這種方法有助于保持應(yīng)用程序的高性能,并保證有更好的用戶體驗(yàn)。
(6)它對搜索引擎友好
對于任何在線業(yè)務(wù),搜索引擎優(yōu)化是成功的途徑。
一般情況下,頁面加載時(shí)間越短,渲染速度越快,應(yīng)用程序在百度等搜索引擎上的排名就越高。
由于渲染速度快,React與其他框架相比,大大減少了頁面加載時(shí)間,這大大有助于企業(yè)在百度搜索引擎結(jié)果頁上獲得第一排名。
擴(kuò)展閱讀:如何使用ReactJS構(gòu)建快速和SEO友好的網(wǎng)絡(luò)應(yīng)用程序
(7)它配備了有用的開發(fā)者工具集
學(xué)習(xí)新興技術(shù),并在實(shí)際項(xiàng)目中使用它們既有趣又有益,但前提是要正確使用它們。
Facebook 明白這一點(diǎn),正是因?yàn)檫@個(gè)原因,他們在 React 框架中增加了 React開發(fā)工具 和 Chrome開發(fā)工具。
這些React工具可以幫助開發(fā)者發(fā)現(xiàn)子組件和父組件,觀察組件的層次結(jié)構(gòu),并檢查組件的當(dāng)前狀態(tài)。
(8)強(qiáng)大的社區(qū)支持
像 Angular 一樣,React 也有非常強(qiáng)大的社區(qū)支持,這是在我們的項(xiàng)目中采用 React 的主要原因之一。
每天都有大量的 React 開發(fā)者,為使 React 成為更好的前端框架而貢獻(xiàn)力量。目前,React 在 Github上已經(jīng)獲得了 200K 顆星,有 1,583 個(gè)固定貢獻(xiàn)者。
不僅如此,專家們還經(jīng)常在視頻網(wǎng)站上上傳免費(fèi)的 React 教程,并在互聯(lián)網(wǎng)上撰寫深入的 React 教程文章和博客。例如,在谷歌上簡單搜索 "免費(fèi)React教程",就能得到13,000,000 個(gè)結(jié)果。
除此之外,React專家還經(jīng)常在Stack Overflow 和 Quora 等QA網(wǎng)站上解疑釋惑,這意味著如果你在使用React時(shí)遇到困難,你總是可以得到專家給出的可靠解決方案。
(9)它提供了更好的代碼穩(wěn)定性
React 遵循向下的數(shù)據(jù)流,以確保父結(jié)構(gòu)不會受到其子結(jié)構(gòu)的任何修改的影響。
因此,每當(dāng)開發(fā)人員對一個(gè)對象進(jìn)行修改時(shí),只需要修改其狀態(tài)并進(jìn)行適當(dāng)?shù)男拚_@樣,只有一個(gè)特定的組件會被更新。
這種數(shù)據(jù)流和結(jié)構(gòu),結(jié)果是提供了更好的代碼穩(wěn)定性和應(yīng)用程序的平穩(wěn)性能。
(10)它被許多財(cái)富500強(qiáng)公司使用
依舊懷疑是否要使用React?
看看一些鼓舞人心的React解決方案的例子吧。成千上萬的公司,包括一些財(cái)富500強(qiáng)公司,都選擇了React JS來做他們的網(wǎng)站和移動應(yīng)用。
Airbnb、特斯拉、阿里巴巴、騰訊QQ和沃爾瑪都是使用 React Native 框架構(gòu)建其移動應(yīng)用的頂級品牌。
另一方面,React網(wǎng)絡(luò)框架目前正被包括阿里、快手、騰訊、字節(jié)、小米、網(wǎng)易、滴滴、Netflix、Paypal、NASA、BBC、Lyft和紐約時(shí)報(bào)等著名公司所利用。
重點(diǎn)是,既然這么多成功的財(cái)富 500 強(qiáng)公司都在使用 React 和 React Native,那么React一定是真正有用的前端和移動應(yīng)用開發(fā)框架。
(11)優(yōu)秀的數(shù)據(jù)綁定
React 使用單向數(shù)據(jù)綁定和flux 架構(gòu),這是一個(gè)應(yīng)用程序設(shè)計(jì)者,從一個(gè)點(diǎn)處理數(shù)據(jù)流。因此,任何人都有能力跟蹤所有的變化,以改變數(shù)據(jù)的特定部分。
(12)擴(kuò)展你的工具和能力
React 在一個(gè)項(xiàng)目中的主要好處是,開發(fā)人員可以在 JavaScript 和 Modem JSX 上寫作。這種方法將允許他們在代碼中使用HTML插入,這使得有廣泛的機(jī)會進(jìn)行重組,并提高完整的生產(chǎn)力。
(13)測試和功能
React 的結(jié)果不僅是性能,也是高度可測試的應(yīng)用程序。它使開發(fā)一個(gè)明確的設(shè)計(jì)更容易,對測試友好。它們可以從觸發(fā)的輸出、函數(shù)、事件等方面進(jìn)行監(jiān)督。
(14)以UI為重點(diǎn)的設(shè)計(jì)
React 為任何 UI 布局提供了潛力。它允許重大的數(shù)據(jù)變化來自動轉(zhuǎn)換特定的UI元素。由于這一最新功能,你不需要任何東西來更新UI。
(15)它提供了一個(gè)獨(dú)特的抽象層
React 強(qiáng)大的一面是它提供了一個(gè)良好的抽象,這意味著它不會向用戶透露任何復(fù)雜的內(nèi)部信息。開發(fā)人員必須了解一些基礎(chǔ)知識,并保留對內(nèi)部功能的檢查。
(16)模板設(shè)計(jì)變得簡單
模板設(shè)計(jì)為開發(fā)人員節(jié)省了數(shù)小時(shí)的開發(fā)時(shí)間,并允許他們在create-react-app 完成開發(fā)環(huán)境的設(shè)置后迅速編寫應(yīng)用程序的代碼。
6、從框架對比上來看

在目前的前端框架使用上,React 和Vue 無論在國內(nèi)還是國外,都是應(yīng)用比重最大的兩個(gè)前端框架。
那我們在框架使用上,該如何選擇呢?我的觀點(diǎn)是,沒有一個(gè)框架是完美的,符合所有場景的框架,你去選擇一個(gè)框架,不存在哪個(gè)框架是最好的, 或者是最不好的,只能選擇一個(gè)最適合你的框架。
6.1、從實(shí)際場景的特點(diǎn),尋找最適合你的框架

(1)關(guān)注團(tuán)隊(duì)新人技術(shù)長大的場景
比如,你所在的公司項(xiàng)目開發(fā)流程已經(jīng)很成熟了,產(chǎn)品也已經(jīng)很成熟了,有一個(gè)比較穩(wěn)定的狀態(tài),這個(gè)時(shí)候公司來了一批新人,當(dāng)前也沒有太多的功能需要開發(fā),培養(yǎng)新人是一個(gè)最重要的目的,在這種背景下,比如你是一個(gè)leader,你可以讓新人去做一些用 Angular 或 jQuery 這種框架型的產(chǎn)品,為什么做這樣的技術(shù)選型呢?比如說 Angular 帶有很多后端的設(shè)計(jì)思想在里面,一個(gè)新同學(xué)或者應(yīng)屆生進(jìn)來,你能去看看Angular的代碼,對增加后端的知識面是很有幫助的。再比如說你用jQuery開發(fā),雖然它很老,效率也低,但不可否認(rèn) jQuery很多設(shè)計(jì)思想其實(shí)很有借鑒價(jià)值的,如果你能看看 jQuery 的這些工程,肯定對你了解框架的封裝,語法的封裝會有很大的幫助。在這個(gè)階段,更應(yīng)該選擇貼近技術(shù)底層的一個(gè)框架,帶有更多設(shè)計(jì)思想的框架。
(2)關(guān)注安全、保密性場景
比如軍隊(duì)、國企項(xiàng)目,這是一些很敏感的系統(tǒng),這些系統(tǒng)可能沒有辦法使用Vue或React框架,你只能做一些框架的自研,這樣自研的框架是符合安全和保密性要求的。
(3)關(guān)注研發(fā)效率的場景
本節(jié)討論的重點(diǎn)是 React 和Vue 的比較,為什么企業(yè)項(xiàng)目研發(fā)多選擇 React 或Vue 呢?因?yàn)閼?yīng)用這兩個(gè)框架會大大提高研發(fā)效率。大家也不要會 React 就覺得 React 最好,會 Vue 覺得Vue 最好,聽說其他的框架效率不高,就覺得它不好。其實(shí),框架的選擇沒有好壞之分,只有適不適合你的項(xiàng)目場景之分。查理芒格,這位投資大師曾經(jīng)講過一個(gè)鐵錘人的故事,不能手里拿著錘子,看什么都像釘子。我們不能手里拿著一個(gè)框架就說其他框架不行,這個(gè)思維一定要扭轉(zhuǎn)一下。
6.2、不同角度看 React 和 Vue

React 和 Vue 從我個(gè)人角度看,做的都非常好了,不然整個(gè)業(yè)界也不會有這么多人用。但把它們兩個(gè)放到一起,就免不了要對比,接下來我們從不同的角度來對React 和 Vue 各方面做個(gè)分析,分析的結(jié)果是,大家根據(jù)自己的場景特點(diǎn),來選擇你到底是用React 還是 Vue。
(1)團(tuán)隊(duì)背書角度
首先我們從 React 和 Vue 的團(tuán)隊(duì)背書看起。我們知道,Vue的團(tuán)隊(duì)主要是以尤雨溪為主的一個(gè)社區(qū)團(tuán)隊(duì),而 facebook 是對React負(fù)責(zé)的,有一個(gè)大型的互聯(lián)網(wǎng)團(tuán)隊(duì)來維護(hù)React。從這個(gè)角度看,誰有更好的背書呢?我們想象一下,如果你在一個(gè)大廠,一個(gè)40個(gè)前端的團(tuán)隊(duì),大概有10個(gè)人左右做基礎(chǔ)設(shè)施建設(shè)。Facebook 開發(fā) React 也一樣,他的配置只會比這個(gè)好,不會比這個(gè)差,幾十個(gè)前端技術(shù)專家去研究一個(gè)框架,每天工作 8 小時(shí),持續(xù)不斷的思考這個(gè)框架如何設(shè)計(jì),這就能充分的保障 React 的先進(jìn)性,遇到新進(jìn)行的理念,他們也會第一時(shí)間補(bǔ)充到 React 的技術(shù)體系里,所以 React 一定有一個(gè)充足的技術(shù)支撐。
當(dāng)然,Evan You 也是在全職保障Vue,但不可否認(rèn),Vue還是靠開源社區(qū),Evan You 也招募了一些人做全職開發(fā),但相對于React 這樣非常專業(yè)的團(tuán)隊(duì),人員上面我不認(rèn)為它能比的上 React 這樣的先進(jìn)團(tuán)隊(duì)的持續(xù)輸出,可能接近,但一定是有差距的。
從這個(gè)角度來看,你去做一個(gè)項(xiàng)目,希望項(xiàng)目能不斷的跟上前端技術(shù)的發(fā)展,React 相對Vue就有優(yōu)勢了,因?yàn)镽eact團(tuán)隊(duì)背書更加強(qiáng)悍一點(diǎn),Vue 靠開源社區(qū),力量會薄弱一些。
但如果你開發(fā)一個(gè)小型的項(xiàng)目,或者只是快速實(shí)現(xiàn)一個(gè) DEMO 功能,一個(gè)不太復(fù)雜的項(xiàng)目,那背書的事情就不是你該考慮的問題了,因?yàn)橐诲N子買賣,實(shí)現(xiàn)完了就完了,或者說未來工程也不會發(fā)展到一個(gè)多么龐大的體系,你也不需要從這個(gè)項(xiàng)目上做很多的創(chuàng)新,這個(gè)時(shí)候硬考慮背書就沒有意義了。但如果你的項(xiàng)目未來會非常大,會不斷的應(yīng)用新技術(shù),順滑的應(yīng)用集成到你的項(xiàng)目里,這個(gè)時(shí)候React優(yōu)勢就凸顯了。
(2)從架構(gòu)設(shè)計(jì)角度
第二個(gè)我們從架構(gòu)設(shè)計(jì)的角度來看React 和 Vue。Vue 架構(gòu)設(shè)計(jì)有點(diǎn)類似于框架,框架是什么?舉個(gè)例子,假如你去蓋一棟大樓,框架就是把鋼筋水泥柱子都給你做好,你只需要粉刷個(gè)墻壁,貼個(gè)瓷磚,這些裝修的事你自己弄就行了。Vue 很類似與這樣一個(gè)框架,它把骨架給你搭好,你去填肉就行了。比如Vue-router、Vuex、Vue unti-test 等等,官方都會給你提供好,你要做的就是拿過來直接寫業(yè)務(wù),這就是 Vue 框架設(shè)計(jì)的理念,也就是 Framework。
React 官網(wǎng)把自己定義為一個(gè)前端的Library,它不是一個(gè)框架,我就是一個(gè)前端庫,我這個(gè)庫里提供必要的東西,至于你用這個(gè)庫如何構(gòu)建你的代碼,或者說你想用這些磚頭如何去壘你的房子,你自己來決定。比如說我想用這個(gè)庫蓋一個(gè)試用于自己的小房子,你完全可以用React 封裝自己的 Router, 封裝自己的數(shù)據(jù)流工具,封裝自己的測試工具。當(dāng)然,在大公司,你完全可以把它做成一個(gè)框架也可以。
可見,Vue 的設(shè)計(jì)理念,它把自己設(shè)計(jì)成一個(gè)架子,把你約束在里面,但React的設(shè)計(jì)理念就是把自己做成磚頭,你要不要撘成一個(gè)架子,你自己來決定,你如何開發(fā)你的房子,也是你自己決定。因此,React 相對于 Vue 來說更加靈活,Vue 相對于React,結(jié)構(gòu)化會更強(qiáng)。
從這個(gè)設(shè)計(jì)架構(gòu)角度講,再來看什么場景下適合使用 React,什么場景下適合使用 Vue。舉個(gè)例子,你的團(tuán)隊(duì)都是菜鳥成員,這個(gè)時(shí)候不用想,肯定選 Vue,因?yàn)榧茏右呀?jīng)搭好了,讓這些新人直接填肉就行,這個(gè)工程會很快的搭建出來,那這個(gè)時(shí)候你要選 React,就不合理了,因?yàn)檫@個(gè)時(shí)候需要有人來大家架子,要不要用數(shù)據(jù)流工具,到底該如何設(shè)計(jì)項(xiàng)目的架構(gòu),這樣如果選擇 React,工程架構(gòu)體系反而不如 Vue。相反,你的團(tuán)隊(duì)成員能力非常強(qiáng),你鼓勵他們技術(shù)創(chuàng)新,不用多說,用React開放性更好,靈活度更好,會產(chǎn)生更多的 idea,提供更多創(chuàng)新的土壤。
(3)從生態(tài)影響力角度
最后從生態(tài)影響力角度,來分析一下React 和 Vue 的區(qū)別。在國內(nèi),React 和Vue 的影響力都不差,很多大廠也在用 Vue,像百度、小紅書、滴滴、美團(tuán)等公司都在用 Vue,像阿里,Airbnb 這些公司就在用 React。如果你的團(tuán)隊(duì)英文水平還不錯(cuò),用 React 可能會更好,中文查不多資料,可以查英文,資料會很多。如果你中文很好,那就用 Vue,Vue的中文文檔比React的中文文檔寫的要好,Vue 中文文檔是一手文檔,React 中文文檔都是二手文檔了。所以,你可以根據(jù)你團(tuán)隊(duì)的情況和你自身的情況再做框架的選型。
(4)從性能的角度
Vue 性能是優(yōu)勢,但 React 性能不是劣勢,Vue 總體底層性能比 React 好一點(diǎn)點(diǎn),這些對于一般項(xiàng)目來說可以忽略不計(jì)。值得一提的是,Vue 很多性能提升都幫你代勞了,你不需要手工做太多的性能優(yōu)化,可React 不行,像 shouldComponentUpate, useMemo 等優(yōu)化手段默認(rèn)是不實(shí)裝的,需要用戶去自己優(yōu)化,這樣的好處使 React 使用更加靈活,你可以完整把控項(xiàng)目的性能,劣勢也是優(yōu)勢。
(5)從技術(shù)創(chuàng)新角度
Vue 開發(fā)工程師技術(shù)上限很難突破,因?yàn)槭褂脛e人做好的架子,想做一些創(chuàng)新有點(diǎn)難,因?yàn)橛袝r(shí)你會被框架約束死。比如你用Vue2.0就有這個(gè)體感,想使用TS,會受限與Vue框架的實(shí)現(xiàn),TS就是沒法很好的使用,直到Vue3出現(xiàn)才緩解了這個(gè)尷尬。React 不會存在這個(gè)問題,很多東西都可以和 React 拼接和組裝,想做技術(shù)創(chuàng)新會非常容易。這就不難理解有些大廠為什么選擇使用React 了,使用 React 更容易造一些輪子,更容易拿一些技術(shù)結(jié)果,更容易做一些有創(chuàng)意的東西了。
五、總結(jié)

1、沒有一分錢的工資是白給的,不學(xué)習(xí)React 工資起點(diǎn)就低了(低一半)。
2、跟隨 Facebook 團(tuán)隊(duì)學(xué)習(xí) React ,走在全球前端技術(shù)發(fā)展最前沿(背景牛)。3、React 擁有全球最完善的開發(fā)社區(qū),技術(shù)問題借助社區(qū)可以輕松處理(有支持)。
4、React Library 開放設(shè)計(jì)理念,提供給開發(fā)者最大的技術(shù)創(chuàng)新空間(能創(chuàng)新)。5、React 的大多數(shù)理念被其他框架借鑒,學(xué)習(xí)好 React,輕松上手其他框架(泛用性)。
6、React 大廠面試必備技能,走上開發(fā)巔峰的強(qiáng)力敲門磚(有前景,有錢景)。
說事實(shí),講道理, 好話都說盡了,你小子要是還想只學(xué)Vue,棄React于不顧,斷送自己的大廠前程,葬送自己的美好錢途,就休怪為兄的無情,今天就給你安排一頓吃不了兜著走!

(, 下載次數(shù): 10)

-----------------------------




歡迎光臨 愛鋒貝 (http://m.7gfy2te7.cn/) Powered by Discuz! X3.4