【轉】ReactNativeweexDeviceOne對比

? ? ? React Native出來有一段時間了,國內的weex和deviceone是近期發布的,我可以說從2011年就開始關注快速開發的跨平臺平臺技術了,接觸過phoneGap、數字天堂、appcan等早期的移動中間件技術,也跟朋友也討論過這類的輕量級框架。這些年通過Html5技術或通過Hybrid技術實現跨平臺的道路,基本已經快走到頭了。嘗試跨平臺App的開發者們都快碰的頭破血流了,大家都在期盼新的更成熟的跨平臺開發技術能夠早日出來。研究React Natvie的時候,基本大部分時間都在看一些類似的源碼,也做了一些分析,最近也對weex和DeviceOne做了一些功課,在這里面做一下自己理解的對比,與大家一起交流,勿噴。
  首先,基本可以肯定的是,大家都把中心轉移到原生的效果上,所以,基本三個平臺在思想上沒有太大的差別。
  1. 首先Reac Native是Facebook產品,而deviceone和weex都是國內公司開發。
  2. React Native 和deviceone 的ios版本使用的javascript引擎使用的都是JSCore,weex和deviceone的android版本使用的是V8.V8的運行性能還是很優秀的,我個人也非常喜歡V8。
  3. React Native 使用的是數據綁定、組件化、前端框架,weex是組件化、數據綁定、前端框架,deviceone是組件化、數據綁定和運行時引擎技術。
  4. 平臺要求:
    Android: React Native(API16)、weex(API14)、deviceone(API4)
    ios:React Native、weex、deviceone基本都是ios7.0以上
    windows:React Native需擴展、weex不支持、deviceone已支持。
  我們可以看下接下里的環境配置:
  React Native 需要安裝Android,iOS開發環境,很多依賴,相對復雜。
  Weex需要安裝Android,iOS開發環境,安裝cli,相對簡單。
  Deviceone不需要安裝Android,iOS開發環境,只需安裝deviceone的IDE,簡單。
  開發:
  基本三個平臺都是JS來開發
  React Native傾向于web方式,需了解android、ios的sdk來寫,學習成本和技術要求相對較高。

  Weex也是傾向于web方式,需了解原生sdk來寫,學習成本和技術要求相對React Native已經有了很大改進。
  Deviceone更傾向于面向對象,無需了解原生sdk,DeviceOne基本已經實現了一次開發多平臺發布的能力。
  調試:
  React Native 可以在chrome查看,不支持節點調試,支持真機調試。
  Weex可以在chrome查看,支持節點調試查看,支持真機調試。
  Deviceone支持真機進行調試,可以實時查看錯誤信息。
  性能:
  React Native重心比較多,目前性能關注不多。
  Weex公司內部的項目里使用,也一直關注性能。
  Deviceone過去一年里一直在一些真實項目中完善性能。
  如何實現的功能實現,listview的實現:
  React Native用的scrollview來實現,有一些性能問題存在。
  Weex用的recyclerview來實現,性能稍微好一些。
  Deviceone基于原生listview類封裝,性能與純原生系統基本一致。
  案例:
  React Native比較早,國外案例多一些。
  Weex目前剛剛,不是很成熟,案例只有示例類的東西。
  Deviceone成立也比較晚,案例也有一些,基本都是近一年內的案例。
  社區:
  React Native較早,社區人比較多,相對成熟。
  Weex較晚,以公司自己人居多,成熟需一段時間。
  Deviceone較晚,社區人相對少一些,內容相對成熟。

  最后,其實我覺得相對于大家來做選擇的時候,如果想要實現快速入門和開發,此時無論選擇React Native、Weex還是DeviceOne哪個平臺來做都是有道理的,未來還是要看各自的技術發展和服務支撐能力。原生的趨勢是大家一致認可的方向,我認為目前我們基本已經不考慮以h5為核心的移動技術了,Web時代的思想是不能適應于移動互聯時代的整體需求的。以上只是我的個人見解,謝謝大家。

轉自 https://segmentfault.com/a/1190000006061167

?

相關文章 http://www.cnblogs.com/benpaodexiaopangzi/p/6045685.html

轉載于:https://www.cnblogs.com/genggeng/p/6738617.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/371008.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/371008.shtml
英文地址,請注明出處:http://en.pswp.cn/news/371008.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

bluetooth射頻已關閉請打開bluetooth射頻_希杰大功率射頻放大器燒了維修診斷步驟...

如果電阻值過低,說明電源內部存在短路,正常時其阻值應能達到100千歐以上;電容器應能夠充放電,如果損壞,則表現為AC電源線兩端阻值低,呈短路狀態,否則可能是開關管擊穿。然后檢查直流輸出部分脫開負載&#…

java中整數如何表示,在Java中如何在位級別上內部表示整數?

慕瓜9086354Java整數為32位,并且總是帶符號的。這意味著,最高有效位(MSB)用作符號位。用an表示的整數int不過是位的加權和。權重分配如下:Bit# Weight31 -2^3130 2^3029 2^29... ...2 2^21 2^10 …

洛谷-P1160 隊列安排

題目 Problem Description 一個學校里老師要將班上N個同學排成一列,同學被編號為1~N,他采取如下的方法: 1.先將1號同學安排進隊列,這時隊列中只有他一個人; 2.2~N號同學依次入列,編號…

1.HTML小結

HTML 基本文檔 <!DOCTYPE html> <html> <head> <meta charset"UTF-8"> <title>文檔標題</title> </head> <body> 可見文本... </body> </html> <!DOCTYPE html>html文件聲明。charset"UTF-8…

方法參數名稱和Spring

繼續之前的博客文章有關構造函數和方法參數以及Java在運行時不保留參數名稱的情況–先前的文章涉及構造函數不保留參數名稱及其對Spring中的Contructor注入的含義&#xff0c;在此我將介紹更多內容不保留參數名稱的情況對Spring有影響&#xff1a; 1.考慮帶參數的Spring MVC C…

Fragment Or DialogFragment Can not perform this action after onSaveInstanceState

轉載&#xff1a;http://blog.csdn.net/chenshufei2/article/details/48747149 public void show(FragmentManager manager, String tag) {mDismissed false;mShownByMe true;FragmentTransaction ft manager.beginTransaction();ft.add(this, tag);ft.commit(); //注意這里…

php延遲更新,ThinkPHP開發指南-模型-高級模型之延遲更新

導航&#xff1a;上一頁我們經常需要給某些數據表添加一些需要經常更新的統計字段&#xff0c;例如用戶的積分、文件的下載次數等等&#xff0c;而當這些數據更新的頻率比較頻繁的時候&#xff0c;數據庫的壓力也隨之增大不少&#xff0c;我們可以利用高級模型的延遲更新功能緩…

three.js制作3d模型工具_3D打印模型打磨拋光常用工具

對于追求更好模型品質的人來說&#xff0c;對3D打印模型進行后處理工作是必不可少的&#xff0c;而后處理&#xff0c;首要的便是對模型進行打磨、拋光&#xff0c;將不屬于模型的耗材去除&#xff0c;提高表面光潔度。在此工作中&#xff0c;我們需要用到很多工具&#xff0c;…

Linux中文檔去掉windows文本的多余的回車符(^M)

1) 使用sed 去掉windows下的回車符 &#xff08;注意^M 在linux 下寫法 按^M 是回車換行符,輸入方法是按住CTRLv,松開v,按m)sed -i s/^M//g filename 2) 在vim下類似 :%s/^M//g &#xff08;^M輸入方法和上面方法相同&#xff09; 3) 使用dos2unix dos2unix filename 個人覺得第…

為何要清除浮動?如何清除?

原因&#xff1a; 元素設置了float屬性后&#xff0c;就會脫離文檔流&#xff0c;當 包含框 的高度小于 浮動框 的時候&#xff0c;會出現高度塌陷。因此才需要清除浮動&#xff01; 表現如圖&#xff1a;包括框container已經包不住float的圖片了&#xff01; 清除浮動方法&a…

Spring MVC錯誤處理示例

這篇文章描述了在Spring MVC 3中執行錯誤處理的不同技術。該代碼在GitHub上的Spring-MVC-Error-Handling目錄中可用。 它基于帶有注釋的Spring MVC示例。 在Spring 3之前處理異常 在Spring 3之前&#xff0c;使用HandlerExceptionResolvers處理異常。 此接口定義一個方法&…

PLSQL 學習之路(1)創建用戶,表空間,表,數據

1.用SYS用戶登錄PL/SQL SYSXE as SYSDBA 2.創建表空間 create tablespace Mars datafile F:\oracle\Mars.dbf size 500M autoextend on next 100M maxsize unlimited logging extent management local autoallocate segment space management auto; 3.創建用戶 create user Mar…

php數字取反,[轉+自]關于PHP7的新特性(涉及取反和disabled_functions繞過)

PHP7和PHP5上的安全區別preg_replace()不再支持/e修飾符利用\e修飾符執行代碼的后門大家也用了不少了&#xff0c;具體看官方的這段描述:如果設置了這個被棄用的修飾符&#xff0c; preg_replace() 在進行了對替換字符串的 后向引用替換之后, 將替換后的字符串作為php 代碼評估…

如何關閉蘋果手機自動扣費_教你關閉蘋果手機系統的自動更新功能,舊手機還能再用幾年!...

大家都知道&#xff0c;蘋果手機在更新幾個大版本后&#xff0c;手機不是變得非常卡&#xff0c;就是非常的耗電&#xff0c;大大的縮短了手機的使用壽命。所以&#xff0c;許多人都不會選擇更新系統&#xff0c;但是手機只要連上WiFi并且在充電狀態&#xff0c;就會在半夜自動…

meta標簽的常見用法

一、定義和用法 <meta> 標簽始終位于 head 元素中。<meta> 元素可提供有關頁面的元信息&#xff08;meta-information&#xff09;&#xff0c;元數據不會顯示在頁面上&#xff0c;但是對于機器是可讀的。比如針對搜索引擎和更新頻度的描述和關鍵詞。 元數據&…

HttpClient的使用

新引入Hutool-HttpUtil的使用&#xff08;更簡單&#xff0c;更強大&#xff01;&#xff09;&#xff0c;詳見&#xff1a;http://www.cnblogs.com/jiangbei/p/7667858.html 一、概述 1.簡介 根據凡技術必登其官網的原則&#xff08;如果有&#xff09;&#xff0c;我們可以先…

四人幫–代理設計模式

代理是另一種結構設計模式 &#xff0c;可以“代表”另一個對象或“代替”另一個對象以訪問后面的對象。 何時使用此模式&#xff1f; 當我們需要創建一個包裝來覆蓋客戶端的主要對象的復雜性時&#xff0c;將使用代理模式。 有哪些使用場景&#xff1f; 虛擬代理–設想一種…

面試題38_數字在排序數組中出現的次數

題目描寫敘述 統計一個數字在排序數組中出現的次數。解題思路 數組是排序的&#xff0c;所以反復出現的數字是相鄰排列的。 用二分查找算法&#xff0c;找到第一次出現的位置。和 最后一次出現的位置。 推斷第一次出現的位置條件為&#xff1a;當前數字的前一個是否與之相等。若…

Hex hsl 轉換 php,關于 RGB,HEX,HSL 顏色相互轉換

最近一段時間在折騰一個微信在線編輯器的項目&#xff0c;使用 UEditor 進行二次開發。關于 UEditor 的定制&#xff0c;用到的都太粗淺&#xff0c;官方文檔上都能找得到。主題使用的樣式表是 ueditor.css 而不是ueditor.min.css&#xff0c;定制主題要注意這一點。而對整個項…

使用inetaddress測試目標可達性_PDPS軟件機器人虛擬仿真:Smart Place功能介紹與使用方法...

概述對于機器人工作站或生產線的虛擬仿真&#xff0c;很大一部分的作用是找出機器人與工裝夾具等外圍設備的最佳布局位置。市面上大多數的工業機器人虛擬仿真軟件都有這種專門用于檢測機器人與外圍設備之間最佳布局位置的功能&#xff0c;比如DELMIA軟件中的“Auto Place”功能…