前言

前言

本书将介绍 React Native,一款由 Facebook 公司出品的、用来构建移动应用的 JavaScript 框架。在 React Native 中利用现有的 JavaScript 和 React 知识,就可以开发和部署功能齐全的、真正原生渲染的移动应用,并同时支持 iOS 与 Android 平台。在不牺牲原生样式和体验的前提下,React Native 比传统的移动开发有更多优势。

我们将从基础开始学习,然后逐步深入,最终部署一款 100% 代码复用的、成熟的移动应用到 iOS 和 Android 平台。除了框架本身的概念讲解之外,我们还将讨论如何使用第三方库,以及如何编写自己的 Java 或 Objective-C 的 React Native 扩展。

如果你想从前端工程师或 Web 开发者的视角接触移动应用开发,那么本书就是为你量身定制的。React Native 是一款令人惊奇的框架,愿你怀着和我一样喜悦的心情来探索它。

预备知识

本书总体上不是介绍 React 的,我们假设你对 React 已经有一些了解。如果你从未接触过 React,我建议你在正式开始学习移动开发之前先阅读一两篇相关的教程,尤其应该熟悉 React 的属性(props)和状态(state)、组件的生命周期,以及如何创建 React 组件等知识。

同时,我们也会使用一些现代 JavaScript 和 JSX 的语法。如果你对这些还不太熟悉也没有关系,我们将在第 2 章讲解 JSX,在附录 A 中介绍现代 JavaScript 的语法。这些语法本质上与你习惯的 JavaScript 代码是一对一的解析关系。

本书主要关注使用 React Native 来编写 iOS 和 Android 应用,不过 React Native 还可以用来编写运行在 Ubuntu、Windows 和 macOS 上的应用。Linux 和 Windows 用户可以使用 React Native 来开发 Android 应用,但是要编写 iOS 应用,你就需要在 macOS 系统上进行开发。

排版约定

本书使用了下列排版约定。

  • 黑体

    表示新术语。

  • 等宽字体(constant width

    表示程序片段,以及正文中出现的变量、函数名、数据库、数据类型、环境变量、语句和关键字等。

  • 加粗等宽字体(constant width bold

    表示应该由用户输入的命令或其他文本。

  • 等宽斜体(constant width italic

    表示应该由用户输入的值或根据上下文确定的值替换的文本。

 该图标表示一般注记。

 

 该图标表示提示或建议。

 

 该图标表示警告或警示。

使用代码示例

补充材料(代码示例、练习等)可以从 https://github.com/bonniee/learning-react-native 下载。

本书是要帮你完成工作的。一般来说,如果本书提供了示例代码,你可以把它用在你的程序或文档中。除非你使用了很大一部分代码,否则无须联系我们获得许可。比如,用本书的几个代码片段写一个程序就无须获得许可,销售或分发 O'Reilly 图书的示例光盘则需要获得许可;引用本书中的示例代码回答问题无须获得许可,将书中大量的代码放到你的产品文档中则需要获得许可。

我们很希望但并不强制要求你在引用本书内容时加上引用说明。引用说明一般包括书名、作者、出版社和 ISBN。比如,“Learning React Native, Second Edition, by Bonnie Eisenman(O'Reilly). Copyright 2018 Bonnie Eisenman, 978-1-491-98914-2”。

如果你觉得自己对示例代码的用法超出了上述许可的范围,欢迎你通过 permissions@oreilly.com 与我们联系。

O'Reilly Safari

Safari(原来叫 Safari Books Online)是一个会员制的培训和参考平台,面向企业、政府、教育从业者和个人。

会员可以访问几千种图书、培训视频、学习路径、互动式教程和精选播放列表,提供这些资源的出版商超过 250 家,包括 O'Reilly Media、Harvard Business Review、Prentice Hall Professional、Addison-Wesley Professional、Microsoft Press、Sams、Que、Peachpit Press、Adobe、Focal Press、Cisco Press、John Wiley & Sons、Syngress、Morgan Kaufmann、IBM Redbooks、Packt、Adobe Press、FT Press、Apress、Manning、New Riders、McGraw-Hill、Jones & Bartlett、Course Technology,等等。

要获得更多信息,请访问 http://oreilly.com/safari

联系我们

请把对本书的评价和问题发给出版社。

美国:

  O'Reilly Media, Inc.

  1005 Gravenstein Highway North

  Sebastopol, CA 95472

中国:

  北京市西城区西直门南大街 2 号成铭大厦 C 座 807 室(100035)

  奥莱利技术咨询(北京)有限公司

O'Reilly 的每一本书都有专属网页,你可以在那儿找到本书的相关信息,包括勘误表、示例代码以及其他信息。本书的网站地址是 http://shop.oreilly.com/product/0636920085270.do

对于本书的评论和技术性问题,请发送电子邮件到:bookquestions@oreilly.com

要了解更多 O'Reilly 图书、培训课程、会议和新闻的信息,请访问以下网站:http://www.oreilly.com

我们在 Facebook 的地址如下:http://facebook.com/oreilly

请关注我们的 Twitter 动态:http://twitter.com/oreillymedia

我们的 YouTube 视频地址如下:http://www.youtube.com/oreillymedia

资源

单枪匹马会让学习过程变得困难。虽然事实并不一定如此,但你不一定要这样做。这里有一些资源,也许在阅读过程中会给你带来一些帮助。

此外,React Native 社区也是实用的资源。

致谢

写成本书离不开大家的帮助和支持。首先要感谢我的编辑 Meg Foley 以及 O'Reilly 团队中的其他成员。同时也要感谢技术审稿人 Ryan Hurley、Dave Benjamin、David Bieber、Jason Brown、Erica Portnoy 和 Jonathan Stark,他们花费了大量时间审阅本书并提出了深有见地的反馈意见。感谢 React Native 团队,如果没有他们杰出的产品,自然也不会有本书的诞生。感谢 Zachary Elliot 对闪卡应用和 Android 测试以及整个开发过程提供的帮助。我很感谢你们的支持。

最后,非常感谢我亲爱的家人和朋友们,在本书写作过程中给了我无限的包容、莫大的精神支持和悉心的指导,并在需要的时候陪我消遣。谢谢你们!

电子书

扫描如下二维码,即可购买本书电子版。

{%}

目录

  • 版权声明
  • O'Reilly Media, Inc.介绍
  • 前言
  • 第 1 章 初识 React Native
  • 第 2 章 React Native 工作原理
  • 第 3 章 构建你的第一个应用
  • 第 4 章 移动应用组件
  • 第 5 章 样式
  • 第 6 章 平台 API
  • 第 7 章 模块和原生代码
  • 第 8 章 平台特定代码
  • 第 9 章 调试与开发者工具
  • 第 10 章 大型应用中的导航与结构
  • 第 11 章 大型应用中的状态管理
  • 总结
  • 附录 A 现代 JavaScript 语法
  • 附录 B 部署应用
  • 附录 C 使用 Expo 应用
  • 作者简介
  • 关于封面