React Native 移动开发实战
书籍作者:袁林 |
ISBN:9787111571797 |
书籍语言:简体中文 |
连载状态:全集 |
电子书格式:pdf,txt,epub,mobi,azw3 |
下载次数:7792 |
创建日期:2021-02-14 |
发布日期:2021-02-14 |
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板 |
内容简介
本书以实战开发为主旨,以React Native应用开发为主线,以iOS和Android双平台开发为副线,通过完整的电商类App项目案例,详细地介绍了React Native应用开发所涉及的知识,让读者全面、深入、透彻地理解React Native的主流开发方法,从而提升实战开发水平和项目开发能力。
本书共12章,分为4篇,涵盖的主要内容有搭建开发环境、Nuclide、各种命令行工具(Git、Node.js)、布局与调试、组件、API、第三方组件、基于Node.js的服务器、fetch API、AsyncStorage/SQLite/Realm数据库存储、原生平台接口开发、redux开发框架、应用打包与发布、热更新与CodePush等。
本书适合iOS和Android原生平台应用开发者,以及有兴趣加入移动平台开发的JavaScript开发者阅读。当然,本书也适合相关院校和社会培训学校作为移动开发的教材使用。
本书精华内容
React Native的优势
搭建React Native开发环境
React Native开发基础知识
React Native的组件
原生平台的适配和调试
React Native的服务器端处理
常用React Native API
React Native与原生平台混合编程
电商App的复盘
App的发布
App的热部署
ES 6语法
作者简介
袁林,2010年毕业于南京邮电大学。毕业后一直从事移动App研发工作,先后服务于中兴通讯、三星电子和南京企友等公司。历任App高级工程师、项目经理等职位。具备丰富的Node.js后端服务构建、Native客户端开发和React Native客户端开发经验。长期致力于应用各种IT新技术提升生产效率和解决实际问题。曾经带队自主研发多个电信级企业应用。
编辑推荐
详解React Native应用从创建、开发到发布的全过程,展示各组件和API的用法
实战为王,通过典型项目案例,让读者快速掌握React Native应用开发
前言
随着手机和移动互联网技术的日益成熟,移动应用的领域也从如何开发,发展到如何更高效、更低成本地开发。传统的原生平台(iOS、Android)开发技术虽然比较成熟,但由于开发效率和成本的限制,已经越来越无法满足移动互联网应用的开发需求。
所以,具有简单、迅速、跨平台的优势,而且基于Web开发语言和布局技术的React Native得以迅速流行,并一举夺得跨平台开发技术的头筹。
目前市场上大多数React Native书籍主要以翻译和讲解官方文档为主,并未从开发实际应用出发,通过典型案例来指导读者提高开发水平。本书以实战为主旨,通过完整的电商类App项目实例,来介绍React Native中常用的组件、API、布局、第三方组件和原生接口,让读者全面、深入、透彻地理解React Native主流的开发和设计方法,提升实际开发水平和项目实战能力。
本书涉及的概念较多,下面给出一个技术点云图,希望读者有所了解。
本书的进阶顺序,也给出如下一个图,便于读者了解。
本书特色
1.每一步都有详细的源码和实例参考
为了便于读者理解本书内容,提高学习效率,本书的所有内容都有详细的源码和实例参考。对于这些源码和实例,作者均亲自编写和验证,杜绝复制、粘贴代码以敷衍读者的不负责任行为。本书源码可以在https://coding.net/u/learnreactnative/p/learnreactnative-sourcecode/ git里下载。
2.内容涵盖React Native开发的各个方面
本书涵盖React Native组件、API、布局、第三方组件以及原生接口等React Native应用开发的各个方面,尽量保证不出现知识“死角”。凡是涉及的一些技术(如原生、瀑布流、耦合性和JSON),也给出了概念或原理的解释。
3.结合工具助力更高效的React Native开发
在本书“实战”讲解的过程中,详细介绍了React Native开发工具Nuclide的使用、React Native命令行工具的用法及各种调试工具(包括布局、断点及实时加载等)的使用,不仅教读者如何开发,还教读者如何更高效地开发。
4.项目案例典型,实战性强,有较高的应用价值
本书以开发一个电商类应用为例,涵盖了React Native应用开发中会用到的所有重点知识,设计和源码做到拿来可用,方便应用开发者随时查阅和参考。
5.收获的不仅仅是React Native平台和编码
对于一些学习能力较强的读者,完全可以在React Native开发文档的帮助下快速学习和掌握React Native。而本书希望读者在掌握平台和编码之外,还能够了解实际应用开发过程中涉及的软件开发流程、应用架构设计、代码重构技巧,以及原生平台与其他跨平台开发的相关知识,让读者融会贯通地理解应用开发技术。
本书内容及知识体系
第1篇 React Native入门和基础(第1~2章)
本篇介绍了跨平台开发的主流方案和React Native基础知识,主要包括开发环境搭建、React Native命令行工具和React Native布局调试。
第2篇 React Native应用开发实战(第3~7章)
本篇介绍了React Native实际应用开发中常用的技术,主要包括基本组件、使用第三方组件、搭建基于Node.js的服务器为应用绑定真实数据、fetch API、AsyncStorage/SQLite/ Realm数据库存储、更多React Native组件和API的用法、原生平台接口开发等。
第3篇 React Native混合编程(第8~10章)
本篇主要总结和回顾了前7章所开发的电商类应用的技术和架构,主要包括应用的文件结构、Flexbox的整体布局、应用的逻辑结构、应用的通信过程及进一步改进的地方和思路,其中就包括了redux开发框架。
第4篇 App的发布和更新(第11~12章)
本篇主要介绍了React Native应用打包和发布的全过程,配以详细的截图说明,并且对React Native应用发布后的热更新实现和方案CodePush做了详细的示例说明。
适合阅读本书的读者
? React Native学习人员;
? iOS平台应用开发工程师;
? Android平台应用开发工程师;
? Web前端开发工程师;
? Node.js服务端开发工程师;
? 计算机相关专业的学生;
? 专业培训机构的学员;
? 软件开发项目经理。
本书作者
本书由袁林主笔编写。其他参与编写的人员有高旭、贺庆端、黎林、李伟浩、刘成智、刘利、刘源、谭建利、吴贵文、吴娟、夏秀英、肖太平、郑星。
致谢
感谢本书的编辑,让我有机会和本书结缘。感谢我的伙伴们:邵长磊、刘冬冬、袁方、袁满、翟绍虎、洪敏、郭晨光及张砚,与我一起探讨新技术并和React Native结缘。感谢我的妻子韩丽、女儿可可及我的父母,写作占用了我很多陪伴家人的时间和精力,正是有了家人的支持,才得以坚持下去。
最后还要感谢读者,本书的价值因你们而存在。
编者
目录
前言
第1篇 React Native入门和基础
第1章 为什么要学习React Native 2
1.1 看透React Native 2
1.1.1 React Native与React.js 2
1.1.2 React Native的跨平台 3
1.1.3 解剖React Native应用的结构 4
1.2 React Native的特点 5
1.2.1 其一:Learn Once, Write Anywhere 5
1.2.2 其二:简单易学的开发语言 6
1.2.3 其三:接近原生应用的性能和体验 7
1.2.4 其四:完善的生态系统 7
1.3 搭建React Native开发环境 9
1.3.1 安装原生开发工具——Android 9
1.3.2 安装原生开发工具——iOS 11
1.3.3 安装Node.js 12
1.3.4 安装React Native 13
1.3.5 安装其他辅助工具 14
1.4 第一个React Native应用 16
1.4.1 初始化项目 16
1.4.2 运行项目 17
1.4.3 调试项目 18
1.5 小试牛刀——更改React Native项目源码 18
1.6 小结 20
第2章 全局解析React Native开发的基础技术 21
2.1 开发具备的基础知识说明 21
2.2 Git版本控制工具 22
2.3 React Native的JSX解决方案 24
2.4 React Native的Flexbox布局 25
2.5 如何调试React Native项目 35
2.6 实战——设计一个电商App 37
2.7 小结 56
第2篇 React Native应用开发实战
第3章 React Native的组件(1) 58
3.1 创建新的电商App 58
3.2 完善搜索框功能——TextInput组件 64
3.3 完善轮播广告——Image组件 68
3.4 完善商品列表——ListView组件 73
3.5 拖曳刷新列表——RefreshControl组件 80
3.6 添加页面跳转功能——Navigator组件 83
3.7 二级页面的跳转——TouchableOpacity组件 86
3.8 实现页面间的数据传递 89
3.9 小结 90
第4章 React Native的组件(2) 91
4.1 只支持特定平台的组件 91
4.2 第三方组件 102
4.3 小结 113
第5章 原生平台的适配和调试 114
5.1 iOS平台的适配 114
5.2 iOS开发的调试技巧 117
5.3 Android平台的适配 118
5.4 Android平台的调试技巧 122
5.5 小结 124
第6章 React Native的服务器端处理 125
6.1 学习Node.js 125
6.2 服务端接口的设计:RESTful 132
6.3 实现电商App的服务器端接口 133
6.4 网络前后端交互的原理fetch 145
6.5 App从服务器获取数据 146
6.6 App数据的本地化存储 160
6.7 小结 168
第7章 常用React Native API 169
7.1 屏幕设置相关API 169
7.2 动画API 174
7.3 组件、React Native API、原生平台API 184
7.4 实现自己的Platform API 185
7.5 为应用添加更丰富的API 189
7.6 小结 208
第3篇 React Native混合编程
第8章 React Native与原生平台混合编程(1) 210
8.1 创建并移植项目 210
8.2 访问设备 211
8.3 访问相册 217
8.4 React Native与原生平台的通信原理 228
8.5 React Native平台调用原生页面 229
8.6 原生平台调用React Native组件 238
8.7 小结 240
第9章 React Native与原生平台混合编程(2) 241
9.1 使用相机拍摄图片 241
9.2 添加图片选择提示框 247
9.3 重构图片选择库 251
9.4 向iOS项目中添加React Native支持 256
9.5 向Android项目中添加React Native支持 261
9.6 小结 264
第10章 电商App的复盘 265
10.1 电商App的文件 265
10.2 电商App的结构 267
10.3 优化和改进 270
10.4 用到的组件 275
10.5 小结 276
第4篇 App的发布和更新
第11章 App的发布 278
11.1 App Store苹果应用商店 278
11.2 Android应用商店 285
11.3 小结 289
第12章 App的热部署 290
12.1 什么是热部署 290
12.2 解析React Native应用的工作原理 290
12.3 实现React Native的热部署 292
12.4 微软的热部署方案CodePush 295
12.5 小结 303
附录A ES 6语法 304