Facebook 正在重构 React Native
极客时间编辑部
讲述:丁婵大小:1.07M时长:02:21
近日,React 的工程经理索菲·阿尔伯特(Sophie Alpert)在其官方博客上宣布,Facebook 将要重构 React Native,使其更轻量、更具灵活性、更适应 JavaScript 生态圈的发展。
但在过去的 5 年里,他们发现最初的设计原则加大了某些特性的开发难度。异步桥接(asynchronous bridge)意味着不能直接将 JavaScript 逻辑与很多原生 API 集成在一起,因为这些原生 API 是同步的。
另外,批量桥接(本地调用队列)意味着,React Native 应用程序调用原生实现的函数会更加困难。对于完全使用 React Native 构建的应用程序,这些限制还是可以承受的。但是对于在 React Native 与现有应用程序代码之间进行复杂集成的应用程序,情况则变得十分糟糕。
因此,Facebook 正在对 React Native 进行大规模重构,让架构变得更加灵活,并能够更好地与混合 JavaScript/ 原生应用开发中的原生基础设施集成。
据了解,为了使 React Native 更加轻量化,并且能够更好地适应现有的原生应用,此次重构主要从三个方面进行:
首先,改变线程模型。UI 更新不再需要在三个不同的线程上执行,而是可以在任意线程上同步调用 JavaScript 进行优先更新;
其次,将异步渲染功能引入 React Native 中,允许执行多个渲染,并简化异步数据处理;
最后,简化桥接,让它变得更快、更轻量。原生和 JavaScript之间的直接调用效率更高,并且可以更轻松地构建调试工具,如跨语言堆栈跟踪。
在完成以上工作之后,有可能会带来更紧密的集成。现在,如果不通过复杂的 hack 手段,就无法让原生导航和手势处理或原生组件(如 UICollectionView 和 RecyclerView)一起工作。但是,在对线程模型做出更改之后,开发者构建这样的功能将会非常简单。
最后,阿尔伯特提到,等今年晚些时候这个项目将要完工时,Facebook 将会披露更多的细节。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论