編輯推薦
所在的開發團隊規模較小,但想要為iOS和Android兩個平颱開發應用?
早就聽說過React Native的大名,卻不清楚是否適閤開發自己的應用?
研究無數代碼之後,想要瞭解更多React Native在當今業界的實際使用情況?
如果你有以上睏惑,那麼本書不容錯過!
● 瞭解React Native部署過程與原生模塊的使用
● 用JavaScript、Java和Objective-C創建自定義原生組件、異步調用、第三方庫鏈接
● 自定義構建腳本的實現,以及如何在iOS、Android、Web應用間共享代碼
● 無bug移動應用的維護
● 靜態類型檢查、依賴注入以及應用狀態管理
● 如何從UI中分離業務邏輯,如何實現UI測試
● 如何利用React Native實現特定用途
內容簡介
使用React Native可以輕鬆開發跨平颱應用,並且無需等待Apple、Google或者Amazon的審核過程,就可以為自己的應用發布更新。《React Native應用開發實例解析》主要從功能擴展和實際應用方麵講解React Native,帶領讀者全麵瞭解React Native的API和組件,並且閱讀本書無需React開發背景。《React Native應用開發實例解析》共五章,前兩章介紹React Native的曆史發展和基礎知識,包括原生組件和第三方庫;餘下三章則分彆介紹三個企業應用——Myagi、TinyRobot和Fixt,探討瞭當今業界使用React Native的方式,以及生産環境下需要注意的問題和相應對策。
《React Native應用開發實例解析》適閤客戶端開發人員、前端開發人員,以及所有對React Native感興趣的程序員。
作者簡介
【作者簡介】
Alexander McLeod
銷售人員在綫訓練平颱Myagi的CTO。
Pavlo Aksonov
經驗豐富的軟件開發人員,活躍的開源貢獻者,有超過15年的Web和移動端開發經驗。
Arjun Komath
精通多門語言的程序員,活躍的開源貢獻者,用React Native開發瞭Product Hunt的開源Android客戶端Feline。
Atticus White
就職於波士頓的Robin Powered公司,精通React Native、Angular以及NodeJS開發。
Isaac Madwed
全棧工程師,就職於Fixt。
【譯者簡介】
林昊
畢業於華中科技大學,現就職於網龍工程院前端團隊,熱衷技術翻譯,喜歡探索現代Web技術,對大前端的發展有濃厚興趣。
目錄
第1章 用JavaScript開發移動應用 1
1.1 過去 2
1.2 現狀 2
1.3 React的起源 3
1.3.1 為什麼選擇React 3
1.3.2 React的工作原理 4
1.4 為什麼選擇React Native 5
1.5 React Native的工作原理 5
1.6 局限性 7
1.7 開發第一個React Native應用 7
1.7.1 JSX——JavaScript 語法擴展 7
1.7.2 狀態和屬性 7
1.7.3 React組件生命周期 9
1.7.4 樣式 9
1.7.5 觸摸事件的處理 10
1.7.6 網絡 11
1.7.7 深度鏈接 11
1.7.8 動畫 13
1.7.9 調試與熱模塊重載 14
1.7.10 應用監控 15
1.8 開始動手 15
1.9 第一步:編寫用戶界麵 17
1.10 第二步:與服務器/後端通信 21
1.11 第三步:添加動畫效果 24
1.12 Android平颱上的做法 26
1.13 第四步:添加原生模塊 27
1.14 部署第一個應用 28
1.14.1 部署 28
1.14.2 CodePush 29
1.15 總結 29
第2章 原生模塊與組件 30
2.1 第一個原生組件 30
2.2 剖析原生組件 31
2.3 創建自定義原生組件 34
2.3.1 Android 37
2.3.2 iOS 41
2.3.3 JavaScript 45
2.4 原生模塊 47
2.4.1 剖析原生模塊 47
2.4.2 參數 49
2.4.3 迴調函數和promise 50
2.4.4 常量 53
2.4.5 事件 53
2.5 示例 55
2.5.1 Android 55
2.5.2 iOS 59
2.5.3 JavaScript 60
2.5.4 注意事項:綫程 62
2.5.5 注意事項:Swift 63
2.6 鏈接模塊和組件 63
2.7 總結 68
第3章 示例應用:Myagi 69
3.1 為什麼選擇React Native 69
3.2 狀態 70
3.2.1 Flux 71
3.2.2 Myagi API 71
3.2.3 Marty.js與狀態模塊的生成 72
3.3 路由 73
3.4 身份驗證 76
3.5 iOS平颱的環境配置 79
3.5.1 plist文件與react-native-env模塊 79
3.5.2 iOS scheme文件與構建配置 80
3.5.3 自定義構建腳本 81
3.6 跨平颱代碼共享 82
3.6.1 代碼共享的利與弊 83
3.6.2 iOS與Android間的代碼共享 83
3.6.3 原生應用與Web應用間的代碼共享 84
3.7 測試 86
3.7.1 測試類型 87
3.7.2 單元測試的實現 90
3.7.3 UI集成測試的實現 91
3.7.4 QA測試 93
3.8 發布與更新 93
3.8.1 Git工作流 93
3.8.2 iOS應用商店更新流程 94
3.8.3 CodePush更新流程 94
3.8.4 小結 96
第4章 示例應用:TinyRobot 97
4.1 為何選擇React Native 97
4.1.1 npm 98
4.1.2 靜態類型檢查工具Flow 98
4.1.3 開源 99
4.1.4 響應式編程 99
4.1.5 XMPP 99
4.1.6 技術棧 99
4.2 可擴展應用架構 100
4.2.1 MVC 100
4.2.2 Flux 101
4.2.3 Redux 102
4.2.4 MobX與Redux的比較 103
4.2.5 領域對象模型 108
4.2.6 依賴注入 109
4.2.7 持久化 110
4.2.8 應用狀態管理 112
4.2.9 設計模式 120
4.2.10 應用架構 120
4.3 導航 120
4.3.1 NavigatorIOS 121
4.3.2 注冊與認證流程 122
4.3.3 完美的導航 123
4.4 通信 124
4.4.1 原生vs. JavaScript 125
4.4.2 函數式編程 125
4.4.3 用戶界麵 126
4.5 位置 128
4.6 部署與單元測試 129
4.6.1 React Native組件測試 129
4.6.2 UI測試 130
4.6.3 快速更新應用 132
4.6.4 版本控製係統 133
4.6.5 持續部署 133
4.7 總結 133
第5章 示例應用:Fixt 134
5.1 何為Fixt 134
5.2 故障分析程序 135
5.2.1 快速分析與急救 135
5.2.2 Platfom 135
5.2.3 NetInfo 136
5.2.4 Fixt的設備參數模塊 138
5.2.5 React Native的統一思想 142
5.3 身份驗證 143
5.3.1 何為Digits 143
5.3.2 在代碼內集成Digits 143
5.3.3 樣式 145
5.3.4 迴調函數 146
5.3.5 注銷 147
5.3.6 實現 148
5.3.7 數據維護 149
5.4 建議:如何管理快速變化的生態 150
5.4.1 讓應用保持最新 150
5.4.2 瀏覽文檔 150
5.4.3 何處以及如何尋求幫助 151
React Native應用開發實例解析 下載 mobi epub pdf txt 電子書