移动开发者如何更好地学习 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工作。


分享到:


相關文章: