Flutter與React Native

1、Flutter前端

1.什麼是Flutter網絡

2018年6月21日谷歌官方宣佈Flutter的首個發佈預覽版(Release Preview 1)正式發佈,這標誌着谷歌進入了Flutter正式版(1.0)發佈前的最後階段。架構

Flutter是一個由谷歌開發的開源移動應用軟件開發工具包,用於爲Android和iOS開發應用,同時也將是Google Fuchsia(目的是爲了替換Android系統)下開發應用的主要工具。框架

Flutter主要的開發語言是dart(一種面嚮對象語言),其核心思想是widgets(組件)也能夠看作是類。工具

2.Flutter組件組件化

Flutter爲佈局提供了豐富的組件類,具體請查看API https://flutterchina.club/docs/。可是相對比較麻煩的,好比Image組件就分爲new Image.network(加載網絡圖片)和 Image.asset(加載本地圖片),在測試中我使用過這個組件,可是不知道什麼緣由,width屬性設置了也沒見效果,height和其餘的屬性卻是沒什麼問題。佈局

3.Flutter開發難度性能

因爲這是一個面嚮對象語言,若是你有Java開發經驗或者其餘面嚮對象語言開發基礎,那麼上手難度天然比較低。不過新的技術,天然有新的技術棧,困難確定是比較多的,並且Flutter的社區還不是很成熟,因此若是你想使用Flutter開發應用成本天然會高許多。學習

4.Flutter前景開發工具

跨平臺應用如今也比較多,至於能不能真正作到徹底跨平臺這也是業界一直以來關心的話題。就目前來講Flutter還只能算是開始。那麼若是谷歌後期想用Flutter替換Android,這裏就關係到整個商業運用和用戶接收程度了。假設這一切進行的比較順利,那Flutter仍是值得研究的,固然這個得綜合本身的時間成本。

2、React Native(有經驗的同窗請跳過這段)

1.什麼是React Native

React Native (簡稱RN)是Facebook於2015年4月開源的跨平臺移動應用開發框架,是Facebook早先開源的JS框架 React 在原生移動應用平臺的衍生產物,目前支持iOS和安卓兩大平臺。RN使用Javascript語言,相似於HTML的JSX,以及CSS來開發移動應用,所以熟悉Web前端開發的技術人員只需不多的學習就能夠進入移動應用開發領域(摘自網絡)。

2.React Native核心思想

React Native帶來了組件化開發的思想,所謂組件,即封裝起來的具備獨立功能的UI部件。React Native 推薦以組件的方式去從新思考UI構成,將UI上每個功能相對獨立的模塊定義成組件,而後將小的組件經過組合或者嵌套的方式構成大的組件,最終完成總體UI的構建(摘自網絡)。

React Native使用兩種數據來控制一個組件:props和state。props是在父組件中指定,並且一經指定,在被指定的組件的生命週期中則再也不改變。 對於須要改變的數據,則須要使用state(摘自網絡)。

3.React Native開發難度

React Native使用Javascript語言作爲開發語言,組件使用JSX,樣式使用CSS。其實只要理解狀態機運行方式,就很容易上手。並且社區也已經比較完善,在開發中遇到的問題也能找到相應的解決方案。若是你是一個前端開發工程師,那React Native很適合你。

4.React Native前景

在跨平臺語言中React Native應該算是作得比較好的,可是開發比較複雜的應用,那就要求開發人員
即要懂Android又要會IOS,這樣就造成了學同樣變成了學多樣。那麼它最好的使用場景就是混合式開發,主場景使用原生,其餘活動場景使用React Native。這樣即保證了效率又保證了性能。

3、Flutter與React Native性能對比

在性能方面Flutter仍是比React Native快一點,開發難度方面React Native比Flutter更加簡潔方便,
架構思想上React Native也相對較好。
(圖片摘自網絡)

相關文章
相關標籤/搜索