移動開發者如何更好地學習 React Native?|技術頭條

熱更新

  • 這是React Native的一個重要功能,蘋果去年有過一次對熱修復的嚴打,JSPatch慘遭扼殺,不過對於RN這樣的沙盒熱更新是可以的;
  • 微軟的hot-push是個不錯的工具(https://github.com/Microsoft/react-native-code-push);
  • 有條件的單位可以自己建熱修復服務,下載bundle包。

native組件開發

  • React Native可能還沒有相應的模塊封裝,但是提供native組件開發能力。利用這種方式解決平臺特性,支付、推送、Face ID都可以封裝成native組件來解決:
  • iOS原生模塊(https://reactnative.cn/docs/native-modules-ios)
  • iOS原生UI組件(https://reactnative.cn/docs/native-components-ios/)
  • 安卓原生模塊(https://reactnative.cn/docs/native-modules-android/)
  • 安卓原生UI組件(https://reactnative.cn/docs/native-components-android/)
  • rnstart:是根據上面技術棧搭建的react native starter demo工程(https://github.com/jeremyzj/rnstarter)。
移動開發者如何更好地學習 React Native?|技術頭條

未來展望

論成熟度、穩定性,RN 比不上iOS和Android原生,也存在很多奇怪的BUG,習慣了OC、Java語言開發的對於JS缺少類型系統很失望,對於手動操作動畫也依然無解,長列表性能問題無解、手勢操作不夠靈活、iOS podfile維護也不給力........等等問題。

很多單位採用模塊化方案,讓App有RN的能力,讓業務交互簡單的模塊來用react-native開發。但是Facebook依然很努力地在改變,2018年對react-native有了一次大的重構,目的更輕量化並能更好地適應現有的原生應用,更符合JS的生態系統。

對於移動開發者而言,react-native只是開發箱中其中一種工具。豐富自己工具箱,才能有更寬的視野和更多的開發思路。

作者:魔笛,從事移動端開發7+年的經驗,目前在某互聯網金融公司作為iOS端leader工作。


分享到:


相關文章: