React Native for Mobile Development (eBook)
XVI, 237 Seiten
Apress (Verlag)
978-1-4842-4454-8 (ISBN)
Develop native iOS and Android apps with ease using React Native. Learn by doing through an example-driven approach, and have a substantial running app at the end of each chapter. This second edition is fully updated to include ES7 (ECMAScript 7), the latest version of React Native (including Redux), and development on Android.
You will start by setting up React Native and exploring the anatomy of React Native apps. You'll then move on to Redux data flow, how it differs from flux, and how you can include it in your React Native project to solve state management differently and efficiently. You will also learn how to boost your development by including popular packages developed by the React Native community that will help you write less; do more. Finally, you'll learn to how write test cases using Jest and submit your application to the App Store.
React Native challenges the status quo of native iOS and Android development with revolutionary components, asynchronous execution, unique methods for touch handling, and much more. This book reveals the the path-breaking concepts of React.js and acquaints you with the React way of thinking so you can learn to create stunning user interfaces.
What You'll Learn
- Build stunning iOS and Android applications
- Understand the Redux design pattern and use it in your project
- Interact with iOS and android device capabilities such as addressbook, camera, GPS and more with your apps
- Test and launch your application to the App Store
Akshat Paul is a Software Architect and author of the books 'React Native for iOS Development' and 'RubyMotion for iOS Development Essentials'. He has extensive experience of mobile & web development and has delivered many enterprise and consumer applications over the years. In other avatars, Akshat frequently speaks at conferences and meetups on various technologies. He has given talks at React Native Conference EU, Devops@scale Amsterdam, TheDevTheory Conference, RubyConfIndia, #inspect-RubyMotion Conference Brussels and was the KeyNote speaker at technology leadership events in Bangkok and Kuala Lumpur. Besides writing code, Akshat spends time with his family, is an avid reader, and obsessive about healthy eating.
Abhishek Nalwaya is the author of three books and has spoken at many conferences and meetups, such as RubyConf India and RubyMotion conference. He has extensive experience in DevOps, web, and mobile development. Besides programming, Abhishek loves to run a few miles and cook healthy food.
Develop native iOS and Android apps with ease using React Native. Learn by doing through an example-driven approach, and have a substantial running app at the end of each chapter. This second edition is fully updated to include ES7 (ECMAScript 7), the latest version of React Native (including Redux), and development on Android. You will start by setting up React Native and exploring the anatomy of React Native apps. You'll then move on to Redux data flow, how it differs from flux, and how you can include it in your React Native project to solve state management differently and efficiently. You will also learn how to boost your development by including popular packages developed by the React Native community that will help you write less; do more. Finally, you'll learn to how write test cases using Jest and submit your application to the App Store. React Native challenges the status quo of native iOS and Android development with revolutionary components, asynchronous execution, unique methods for touch handling, and much more. This book reveals the the path-breaking concepts of React.js and acquaints you with the React way of thinking so you can learn to create stunning user interfaces. What You'll LearnBuild stunning iOS and Android applicationsUnderstand the Redux design pattern and use it in your projectInteract with iOS and android device capabilities such as addressbook, camera, GPS and more with your appsTest and launch your application to the App StoreWho This Book Is ForAnyone with JavaScript experience who wants to build native mobile applications but dreads the thought of programming in Objective-C or Java. Developers who have experience with JavaScript but are new or not acquainted to React Native or ReactJS.
Table of Contents 4
About the Authors 9
About the Technical Reviewer 10
Acknowledgments 11
Introduction 12
Chapter 1: Learning the Basics: A Whistle-Stop Tour of React 14
Why React? 15
Virtual DOM 16
One-Way Data Flow 18
Installation and Setup 21
Create a Hello World Application 22
Introduction to Components 23
Deep-Dive into Components 26
Properties 26
State 29
Summary 33
Chapter 2: The Simplest Program: Hello World with React Native 34
What Is React Native? 35
Installation 35
Installing Node and npm 36
Installing the React Native Package 36
Updating React Native 36
Your First App 37
Creating a Basic Skeleton 38
Prerequisites for Running App on a Simulator 46
Running the App on a Simulator 47
It’s Not a UIWebView 47
Enabling Live Reload 49
What Makes React Native Different? 49
Ejecting a React Native Application 50
Debugging 55
Reload 56
Debugging in Chrome 56
Debugging in Safari 57
Showing Performance Monitor 58
The Inspect Element 59
Summary 60
Chapter 3: Solving Problems Differently with Flux and Redux 61
MVC Pattern 62
Flux 63
Success of Flux 66
Flux Deep Dive 66
The Dispatcher 66
The Need for Dispatcher [dispatch() and waitFor()] 67
Stores 67
Actions 68
Redux 68
Redux Core Concepts 69
Action 70
Reducer 70
Store 71
Redux with React Native 71
Working with the Components 75
Summary 79
Chapter 4: Canvas, Brush, and Paint: Working with the User Interface 80
React Navigation 81
NavigatorIOS 87
Flexbox 88
flexDirection 91
Flex 93
Images 97
TouchableHighlight 99
ListView 105
ScrollView 109
< ScrollView>
Animations 110
Summary 112
Chapter 5: Exploring Device Capabilities 113
MapView and GeoLocation 113
Reviewing the GeoLocationMap Code 116
Adding Annotation on a Map 118
Displaying the Latitude and Longitude of the Current Location 120
AsyncStorage 126
Reviewing the AsyncStorage Code 130
Native Alert 133
Reviewing the NativeAlert Code 136
Extending the NativeAlert Example 137
WebView 140
Reviewing the WebView Code 142
Deep Linking 143
Summary 149
Chapter 6: Communicating with Servers 150
XMLHttpRequest 151
WebSocket 151
Fetch 152
Getting Data from a Server 154
Saving Data to a Server 158
Summary 172
Chapter 7: Native Bridging in React Native 173
Native Bridge 174
Prerequisites for the Example 174
iOS Native Bridge 174
Native Bridge for Android 187
Summary 194
Chapter 8: Testing 195
Flow 195
Benefits of Using Flow 196
Jest 196
Jest with React Native 197
Snapshot Testing with Jest 200
Summary 205
Chapter 9: Getting Ready for the World 206
Apple Developer Account 206
Google Play Console 207
iOS Build Process 208
Create a CSR File 210
Generating iOS .ipa(iPhone Application Archive) 215
Generating Android .apk(Android application package) 226
Beta Testing with TestFlight 229
Summary 230
Chapter 10: The Ecosystem: Extending React Native 231
Popular React Native Libraries 231
UI 232
Styled-components 232
Lottie-react-native 232
React-native-vector-icons 232
Forms 232
Formik 232
Redux-form 232
Type Checking and Linting 233
ESLint 233
Prop-types 233
Flow 233
Testing 233
Jest 233
Enzyme 233
Chai 234
Mocha 234
Interacting with APIs and Back End 234
Axios 234
Apollo 234
React-native-firebase 234
Routing 235
React Router 235
React Navigation 235
Utilities 235
Lodash 235
Ramda 235
Moment 235
Reselect 236
Validate.js 236
React-native-device-info 236
Where to Get Help 236
React Native Repository 236
Stack Overflow 237
Stay Updated with React Native 237
React Native Communities 237
Knowledge 238
Discussions and Proposals 238
Summary 238
Index 239
Erscheint lt. Verlag | 12.6.2019 |
---|---|
Zusatzinfo | XVI, 237 p. 115 illus. |
Sprache | englisch |
Themenwelt | Informatik ► Software Entwicklung ► Mobile- / App-Entwicklung |
Mathematik / Informatik ► Informatik ► Web / Internet | |
Schlagworte | Android • app development • Flux Design Pattern • Ios • Mobile Development • react • React.js • React Native • Web Development |
ISBN-10 | 1-4842-4454-0 / 1484244540 |
ISBN-13 | 978-1-4842-4454-8 / 9781484244548 |
Haben Sie eine Frage zum Produkt? |
Größe: 6,8 MB
DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasserzeichen und ist damit für Sie personalisiert. Bei einer missbräuchlichen Weitergabe des eBooks an Dritte ist eine Rückverfolgung an die Quelle möglich.
Dateiformat: PDF (Portable Document Format)
Mit einem festen Seitenlayout eignet sich die PDF besonders für Fachbücher mit Spalten, Tabellen und Abbildungen. Eine PDF kann auf fast allen Geräten angezeigt werden, ist aber für kleine Displays (Smartphone, eReader) nur eingeschränkt geeignet.
Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür einen PDF-Viewer - z.B. den Adobe Reader oder Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür einen PDF-Viewer - z.B. die kostenlose Adobe Digital Editions-App.
Zusätzliches Feature: Online Lesen
Dieses eBook können Sie zusätzlich zum Download auch online im Webbrowser lesen.
Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.
aus dem Bereich