前言

前言

本书将介绍 React Native,一款由 Facebook 公司出品的用来构建移动应用的 JavaScript 框架。在 React Native 中利用现有的 JavaScript 和 React 知识,就可以开发和部署功能齐全的、真正原生的移动应用,并同时支持 iOS 与 Android 平台。采用 JavaScript 作为开发语言并不意味着需要退而求其次,相反,React Native 在不牺牲原生样式和体验的前提下,相比传统移动开发仍然有很多优势。

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

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

预备知识

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

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

本书假设你使用 OS X 操作系统进行开发。开发 iOS 应用必须使用 OS X 操作系统。使用 Linux 和 Windows 开发 Android 应用的支持工作仍在进行中,你可以在官网(http://facebook.github.io/react-native/docs/linux-windows-support.html)阅读更多关于 Linux 与 Windows 支持的相关内容。

排版约定

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

  • 楷体

    表示新术语。

  • 等宽字体(Constant width

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

  • 加粗等宽字体(Constant width bold

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

  • 等宽斜体(Constant width italic

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

 该图标表示提示或建议。

 该图标表示一般注记。

 该图标表示警告或警示。

使用代码示例

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

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

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

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

Safari® Books Online

Safari Books Online(http://www.safaribooksonline.com)是应运而生的数字图书馆。它同时以图书和视频的形式出版世界顶级技术和商务作家的专业作品。技术专家、软件开发人员、Web 设计师、商务人士和创意专家等,在开展调研、解决问题、学习和认证培训时,都将

Safari Books Online 视作获取资料的首选渠道。

对于组织团体、政府机构和个人,Safari Books Online 提供各种产品组合和灵活的定价策略。用户可通过一个功能完备的数据库检索系统访问 O'Reilly Media、Prentice Hall Professional、Addison-Wesley Professional、Microsoft Press、Sams、Que、Peachpit Press、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 以及其他几十家出版社的上千种图书、培训视频和正式出版之前的书稿。要了解 Safari Books Online 的更多信息,我们网上见。

联系我们

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

美国:

  O'Reilly Media, Inc.

  1005 Gravenstein Highway North

  Sebastopol, CA 95472

中国:

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

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

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

 http://shop.oreilly.com/product/0636920041511.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 团队中的其他成员。同时也要感谢技术审稿人 David Bieber、Jason Brown、Erica Portnoy 和 Jonathan Stark,他们花费了大量时间审阅本书并提出了深有见地的反馈意见。感谢 React Native 团队,如果没有他们杰出的产品,自然也不会有本书的诞生。感谢 Zachary Elliot 对 Zebreto 应用和 Android 开发提供的帮助。

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

目录

  • 版权声明
  • O'Reilly Media, Inc. 介绍
  • 前言
  • 第 1 章 初识 React Native
  • 第 2 章 React Native 工作原理
  • 第 3 章 构建你的第一个应用
  • 第 4 章 移动应用组件
  • 第 5 章 样式
  • 第 6 章 平台接口
  • 第 7 章 模块
  • 第 8 章 调试与开发者工具
  • 第 9 章 学以致用
  • 第 10 章 部署至 iOS 应用商店
  • 第 11 章 部署 Android 应用
  • 总结
  • 附录 A ES6 语法
  • 附录 B 命令与快速入门指南
  • 作者简介
  • 关于封面