一区二区三区欧美日韩-一区二区三区欧美-一区二区三区免费在线视频-一区二区三区免费在线观看-久久精品店-久久精品第一页

歡迎您光臨深圳塔燈網絡科技有限公司!
電話圖標 余先生:13699882642

網站百科

為您解碼網站建設的點點滴滴

Flutter和RN對比

發表日期:2018-08 文章編輯:小燈 瀏覽次數:2396

前言

本人目前負責的項目是原生+Webview方式開發的,由于Webview的體驗不太友好,所以決定選擇一種混編的方式,選擇一種跨平臺的技術來提升改善Webview的體驗,通過各種權衡考慮使用了RN,雖然目前RN在重構,但是沒有人可以否認目前RN的霸主地位,我相信它會越來越好的,本章節就不說RN了,接下來說說Google的Flutter。

Flutter Demo項目地址 : Flutter-App

Flutter

  • Flutter是谷歌的移動UI框架,可以快速在iOS和Android上構建高質量的原生用戶界面。 Flutter可以與現有的代碼一起工作。在全世界,Flutter正在被越來越多的開發者和組織使用,并且Flutter是完全免費、開源的。

  • Flutter 是由 Google 的工程師團隊打造的,用于創建高性能、跨平臺的移動應用的框架。
    Flutter 針對當下以及未來的移動設備進行優化,專注于 Android and iOS 低延遲的輸入和高幀率
    Flutter的設計跟react-native很像,但是比RN進了一步
    Flutter的開發語言是Dart

移動端跨平臺開發技術演進

現在主流的移動開發平臺是Android和iOS,之前還有過windows phone。從最開始的Hybrid混合開發技術,到RN的橋接技術,到現在新興的Flutter技術,跨平臺開發技術一直在演進。

跨平臺開發第一個考慮的就是性能問題

  • RN的效率由于是將View編譯成了原生View,所以效率上要比基于Cordova的HTML5高很多,但是它也有效率問題,RN的渲染機制是基于前端框架的考慮,復雜的UI渲染是需要依賴多個view疊加.比如我們渲染一個復雜的ListView,每一個小的控件,都是一個native的view,然后相互組合疊加.想想此時如果我們的list再需要滑動刷新,會有多少個對象需要渲染.所以也就有了前面所說的RN的列表方案不友好;
  • Flutter 吸收了前兩者的教訓之后,在渲染技術上,選擇了自己實現(GDI),由于有更好的可控性,使用了新的語言Dart,避免了RN的那種通過橋接器與Javascript通訊導致效率低下的問題,所以在性能方面比RN更高一籌;有經驗的開發者可以打開Android手機開發者選項里面的顯示邊界布局,發現Flutter的布局是一個整體.說明Flutter的渲染沒用使用原生控件進行渲染
react-native框架原理圖

Flutter實現跨平臺采用了更為徹底的方案。它既沒有采用WebView也沒有采用JavaScriptCore,而是自己實現了一臺UI框架,然后直接系統更底層渲染系統上畫UI。所以它采用的開發語言不是JS,而Dart。據稱Dart語言可以編譯成原生代碼,直接跟原生通信。

Flutter框架原理圖

Flutter將UI組件和渲染器從平臺移動到應用程序中,這使得它們可以自定義和可擴展。Flutter唯一要求系統提供的是canvas,以便定制的UI組件可以出現在設備的屏幕上,以及訪問事件(觸摸,定時器等)和服務(位置、相機等)。這是Flutter可以做到跨平臺而且高效的關鍵。另外Flutter學習了RN的UI編程方式,引入了狀態機,更新UI時只更新最小改變區域。

系統的UI框架可以取代,但是系統提供的一些服務是無法取代的。Flutter在跟系統service通信方式,采用的是一種類似插件式的方式,或者有點像遠程過程調用RPC方式。這種方式據說也要比RN的橋接方式高效。

Flutter與RN異同

  • Flutter性能會更好無線接近原生的體驗,Dart是AOT編譯的,編譯成快速、可預測的本地代碼

  • RN采用JS語言開發,基于React,對前端工程師更友好。Dart語言受眾小

  • Flutter自己實現了一套UI框架,丟棄了原生的UI框架。而RN還是可以自己利用原生框架,兩個各有好處。Flutter的兼容性高,RN可以利用原生已有的優秀UI

  • RN的布局更像css,而Flutter的布局更像native布局,但是去掉xml通過代碼直接寫需要適應下

  • Flutter的第三方庫還很少,RN發展的早,雖然也還不完善,Flutter github還有3000多個issues要解決,還有很長的路要走。

沒有更好只有更合適你的框架


本頁內容由塔燈網絡科技有限公司通過網絡收集編輯所得,所有資料僅供用戶學習參考,本站不擁有所有權,如您認為本網頁中由涉嫌抄襲的內容,請及時與我們聯系,并提供相關證據,工作人員會在5工作日內聯系您,一經查實,本站立刻刪除侵權內容。本文鏈接:http://www.junxiaosheng.cn/18157.html
相關APP開發
 八年  行業經驗

多一份參考,總有益處

聯系深圳網站公司塔燈網絡,免費獲得網站建設方案及報價

咨詢相關問題或預約面談,可以通過以下方式與我們聯系

業務熱線:余經理:13699882642

Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.    

主站蜘蛛池模板: 亚洲精品在线影院| 狠狠射首页| 伊人电院网| 人驴交f ee欧美| 久久国产精品福利影集| 国产 亚洲 中文字幕 久久网| 精品无人区麻豆乱码1区2| www.x日本| 在线播放性xxx欧美| 亚洲 欧美 国产在线视频| 欧美日本韩国一二区视频| 九九九九九热| 国产精品99久久久精品无码| 97精品国产高清在线看入口| 亚洲精品国产自在现线最新| 久久在精品线影院| 国产午夜精品久久久久婷婷| 大学生第一次破苞疼哭了| 99久久精品免费国产一区二区三区 | 姐姐不~不可以动漫在线观看| 大香伊蕉在人线国产最新| 97在线观看免费| 在线中文字幕亚洲日韩| 亚洲人成77777| 亚洲国产精品一区二区动图| 天美麻豆成人AV精品视频| 精品国产麻豆免费人成网站| 国产电影三级午夜a影院| 纯肉宠文高h一对一| chinesevideoshd性舞| 97人人超碰国产精品最新蜜芽| 伊人热人久久中文字幕| 亚洲综合色在线视频久| 亚洲精品高清在线观看| 亚洲a视频在线| 亚洲国产精品嫩草影院| 亚洲国产韩国欧美在线不卡| 小伙无套内射老女人| 男人扒开添女人屁股| 毛片视频大全| 国产小视频免费看|