跳到主要内容

React Native:将现代网络技术带到移动端

·3 分钟阅读
Tom Occhino
Facebook 工程经理

两年前,我们向世界介绍了 React,自那时以来,它在 Facebook 内外部都取得了令人瞩目的增长。如今,尽管没有人被迫使用它,但 Facebook 新的 Web 项目通常会以某种形式使用 React 构建,并且它正在被行业广泛采用。工程师们每天都在选择使用 React,因为它能让他们花费更多时间专注于产品,而不是与框架斗争。然而,直到我们使用 React 构建了一段时间后,我们才开始理解它为何如此强大。

React 强制我们将应用程序分解成离散的组件,每个组件代表一个单一视图。这些组件使得产品迭代更加容易,因为我们无需在更改其中一部分时将整个系统都记在脑中。但更重要的是,React 用声明式 API 封装了 DOM 的命令式、可变 API,这提高了抽象级别并简化了编程模型。我们发现,使用 React 构建时,我们的代码更具可预测性。这种可预测性使我们能够自信地更快迭代,因此我们的应用程序也更加可靠。此外,使用 React 构建的应用程序不仅更容易扩展,我们还发现团队本身的规模也更容易扩展。

结合 Web 快速的迭代周期,我们能够用 React 构建一些很棒的产品,包括 Facebook.com 的许多组件。此外,我们在 React 之上构建了惊人的 JavaScript 框架,例如 Relay,它使我们能够极大地简化大规模数据获取。当然,Web 只是故事的一部分。Facebook 还拥有广泛使用的 Android 和 iOS 应用,这些应用构建在不连贯、专有的技术栈之上。不得不在多个平台之上构建我们的应用程序,这分裂了我们的工程组织,但这只是使原生移动应用程序开发困难的因素之一。

这是一个节选。请在 Facebook Code 阅读其余文章。