angular和react那個更有前景和“錢途”?

張洪權GG


我來回答

如果從錢景和錢途的角度來說,我建議學習react,Facebook 實在太牛了,人的本質就是像好的東西去模仿,去靠齊,導致許多的大廠都在使用react。



Vue很大程度上降低了開發前端的門檻,許多小公司都在用,也很不錯。



Angular 版本迭代太多,坑比較大,在國內似乎一直不受待見,用的少,招聘的職位也不多。



框架一直在更新改變,為了更好地適應這些改變。建議還是要把原生的東西,js掌握的爐火純青,,這些東西是常青樹,至今未有多大變化,卻依然很實用。這樣才能跟上互聯網改變的潮流


空自許


丁哥個人認為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的話,代碼的規模一旦達到一定程度,維護起來成本也非常高。

以上是丁哥對於這兩種框架的個人見解,也非常希望讀者朋友們說出自己的觀點,請在下方留言,我會及時回覆,歡迎關注,謝謝。



分享到:


相關文章: