-
1 # 秋銘山
-
2 # web前端進階
拋開大熱的前端框架Vue不論的話,個人覺得react比angular更有前景。
就連Vue.js作者Evan You都說Vue3.0部分語法借鑑了react的想法。如 vue3.0的一些新特性 Vue Function-based API RFC就借鑑了React Hook的思想。
1、簡單類比單從github上專案Star/社群活躍度來看,react就領先angular了。
React 與目前 Angular X 相比
小而美;成熟,穩定,社群活躍;SSR(服務端渲染 NEXT.js 之流)、跨端(React Native)跨端開發相對成熟;工作機會要比 Angular X 多。就效能而言,react提出了虛擬DOM,很好地提升了效能,這一點要比angular強大。
另外react社群繁榮,Facebook自家很多產品都有使用React,然而Google使用Angular的產品並不多,所以在知名度方面react也是更勝一籌。
2、學習成本從學習難易程度來看,react語法更易上手,更適合華人學習。
以上只是個人的一些小建議,如果想全面提升自己的話,還是建議兩個框架都學,畢竟技不壓身這樣才能提高自己的競爭力嘛!
-
3 # 無意義名字
如果只是A和R。那麼S代表的是google,R代表的是Facebook。
現在扎克伯格真面目慢慢曝光,各種為非作歹事情浮出水面,可謂眾叛親離,FB開始使用者減少,不出幾年FB就沒什麼人用了。
雖然Google和Facebook都是牆外的。但是REACT可能不久後FB禁止華人使用了。
-
4 # 空自許
我來回答
如果從錢景和錢途的角度來說,我建議學習react,Facebook 實在太牛了,人的本質就是像好的東西去模仿,去靠齊,導致許多的大廠都在使用react。
Vue很大程度上降低了開發前端的門檻,許多小公司都在用,也很不錯。
Angular 版本迭代太多,坑比較大,在國內似乎一直不受待見,用的少,招聘的職位也不多。
框架一直在更新改變,為了更好地適應這些改變。建議還是要把原生的東西,js掌握的爐火純青,,這些東西是常青樹,至今未有多大變化,卻依然很實用。這樣才能跟上網際網路改變的潮流
-
5 # 丁哥開講
丁哥個人認為angular比react更好,更有前途和錢途。
React 適合寫一些規模非常小的專案,它只是一個小庫,更jquery一個層次的。而Angular是個全能的框架,是個大中小各種規模的專案。
我們先看一下,都有哪些公司在用Angular,哪些公司在用react。
用 Angular的著名公司有谷歌,耐克,福布斯,UpWork, 通用汽車, HBO, 索尼。
用react的著名公司有臉書, Airbnb, 優步, Netflix, Instagram, WhatsApp, Dropbox。
下面我們就從技術的角度來分析一下,這兩個架構。
首先說Angular更像是一個架構, 作為一個架構, Angular的本身有很多庫。程式設計師可以選擇引入這些庫或者不引入這些庫。主要是跟專案的需求息息相關的。
react則是一個庫, 從這個角度來看,react跟jquery很像。
其次,我們來看一下資料互動方式。
Angular 支援的是雙向繫結。所謂的雙向繫結就是,既可以作為資料輸入也可以作為資料輸出。打個比方,你有一個編輯框,你對這個編輯框設定變數的時候,這個變數首先可以輸入文字,然後如果你在介面上修改文字,即改變編輯框內的文字內容以後,這個變數的值本身也會被改變。
React支援的是單向資料繫結。也就是說react中資料的流向是單向的。也同樣以編輯框為例。關聯編輯框的變數,只能提供輸入。使用者在介面上改變編輯框的內容以後,編輯框所關聯的變數值並沒有改變。那麼,如何才能改變這個變數呢?react是這麼做的, 使用者修改編輯框的內容以後,會發送一個值改變訊號, 這訊號所攜帶的資料負載,就是編輯框中的新值。狀態管理機制,收到這個訊號以後,會取出訊號中的負載更新資料狀態,資料狀態變化以後,指向資料輸入的變數,會收到通知,這個通知透過一個選擇器來實現。
再次,來說一下元件的定義模式。
在Angular中,一個元件包含大體三個部分, 也就是HTML, CSS, Typescript。這樣的好處就是,實現了這三種語言的分離。這樣的一個結果就是,整個專案中,程式碼結構非常乾淨。維護起來相對容易一些。
在react中一個元件就是一個jsx, 那就意味著html,CSS和JavaScript這三種語言都會融合在這一個檔案當中。對於入門級的程式設計師來說,可能會非常喜歡這種模式。你只需要改變一個檔案,就可以實現頁面的改動。但是隨著專案的增大,你會意識到,你的css變得會越來越複雜,你的HTML也會變得越來越複雜,JavaScript也會變得越來越複雜。三個複雜的東西融在一個複雜的檔案裡面,你可以想象,將來你的維護成本有多高。
最後來說一下這兩個流行框架的程式語言。
Angular的預設程式語言是TypeScript, 如果你有面向物件程式語言的背景的話,學習這門語言幾乎不需要多餘的時間。此外這門語言是JavaScript的超集, 如果你有現成的JavaScript程式碼,可以很容易的用起來。
Rect的程式語言是JavaScript。如果要在react中使用TypeScript,你需要做一些額外的工作。使用JavaScript的話,程式碼的規模一旦達到一定程度,維護起來成本也非常高。
回覆列表
我公司在用angular,我也研究過vue和react,我一開始也打算使用vue,後來是客戶需要我們使用angular,現在想想,使用angular是最好的選擇,主要是框架提供的服務全面,後期維護簡單,angular在國內的使用的確少,大部分都是國外公司在使用,但遇到問題一般都能找到解決方案。