當前位置:成語大全網 - 新華字典 - react native 怎麽樣

react native 怎麽樣

React.native是目前唯壹靠譜有前途的移動跨平臺解決方案。

搞移動跨平臺,解決方案已經有過很多了。Xamarin, Cordova, 基於webView的PhoneGap, 還有壹大票各種創業公司的方案。它們都很垃圾。原因很簡單:為達成“壹次編寫到處運行”的目的,這些方案不得不對兩個主要平臺(iOS和Android)的SDK做進壹步的抽象,這意味著它們只能兼容兩個平臺***有的組件,結果就是寫出來的app只能做到最平庸的用戶體驗。特別是微軟的Xamarin,連自家的Windows Phone都搞不好,還給Apple和Google的SDK做包裝,那能好麽?基於Web的方案就更不用說了,本質就是拿HTML套個殼外加壹些原生寫的插件。

React.native的高明之處在於:它並不追求壹次編寫到處運行,它放棄了全部代碼跨平臺這壹不切實際的目標。RN的目標很實際:用同壹門語言(Javascript),同樣的高層架構(Virtual DOM)和設計模式(component-based),針對不同平臺分別作出最佳的用戶體驗。這也就是RN中“native”壹詞的含義。

在實際開發中,要做到最佳用戶體驗,針對iOS和Android應該要分別編寫UI代碼的。實際上RN也鼓勵這麽做。Android是Android,iOS是iOS,web是web,三者有不同的界面語言和用戶習慣,憑什麽要壹樣呢?但除卻UI,業務邏輯、data object、web call等等卻是可以壹樣的。再加上采用了同壹門語言和設計模式,RN在生產力上非常有競爭力。從另壹方面看,Flux設計模式反過來也被原生開發社區接受,Redux庫在Java和Swift上都有翻版原生實現,所以妳不壹定要用RN寫app,但妳還是可以借鑒采用React的設計模式。React項目對於整個開發社區的影響很正面,比PhoneGap這種催生了壹大票廉價app碼農的垃圾技術正面多了。

另外,純Javascript的開源庫也可以直接應用到ReactJS/ReactNative中,這也進壹步提升了生產力。