REACT NATIVE
REACT NATIVE
Description:
Embark on a transformative journey into mobile application development with our comprehensive course on React Native. Over 5 intensive days, you’ll delve deep into the world of React Native, mastering essential concepts and techniques to build powerful, dynamic mobile applications. From understanding the fundamentals of React to harnessing the full potential of React Native for cross-platform development, this course covers it all. Gain hands-on experience in creating UI components, implementing layout and styling, navigating applications, managing state, integrating native features, and optimizing performance. With a focus on practical skills and real-world applications, you’ll emerge equipped to develop cutting-edge mobile solutions with confidence. Join us and unlock the door to endless possibilities in the mobile app development landscape.
Prerequisites:
Working experience on JavaScript & Web Technologies
Good Knowledge of ReactJS
Objectives:
- Gain insight into diverse methodologies utilized in mobile application development.
- Acquire foundational knowledge of React.
- Familiarize oneself with the React Native application development platform.
- Master the creation of UI components in React Native.
- Understand principles of layout and styling.
- Learn the creation of Navigational applications.
- Acquire skills in writing platform-specific code.
- Understand techniques for managing state within an application.
- Learn to leverage native features effectively in React Native.
- Explore considerations regarding security and performance in React Native.
- Gain proficiency in writing unit tests.
- Understand the process of publishing an application.
Duration: 5 days
COURSE OUTLINE
DAY 1
-
Introduction
- Mobile Application Development
- Native Development
- Hybrid Application Development
- Cross-platform Application Development
- Introduction to React Native
-
Introduction to React
- React Components
- State and Props
- Event Handling
-
What is React Native?
- React Native Overview
- Developer Tools for creating, running and publishing React Native Apps
- Setting up a development environment
- Running applications on Device and Simulator
DAY 2
-
Introducing React Native Components
- Application Registry
- Text, Image and View Components
- Collecting User Input
- Handling Touch Events
- Touchable components
- Improving user experience
- Enabling accessibility in components
- Checking for screen readers
-
Layout & Styling
- Understanding Flex Layout
- Positioning element with Flex
- Simple Layouts
- Creating complex layouts
- Using inline styles
- Exploring the styles available
- Create StyleSheet Objects
- Creating global styles for components
-
Platform specific code
- Using the platform module
- Detecting OS versions
- Platform-specific extensions
- Different layout and styles for iOS and Android
DAY 3
-
Debugging
- Enabling the remote JS debugger
- Viewing the applications errors and warming
- Using the chrome developer tools for debugging Javascript
- Viewing the component tree using the React Developer Tools(Standalone)
- Debugging native code
-
Components in depth
- Scroll Views
- List Views (FlatList and SectionList)
- Using the KeyboardAvoidingView
- Working with Images
- Using the modal component
- Using the WebView
- Building a data-driven(Master-Child) screen using List Views
-
State management
- Introducing Redux
- The redux data flow
- Integrating redux to a react native application
- Working with immutable state
- Redux actions creators
- Synchronous and asynchronous action creators
- Using redux thunk
- Building a data-driven(Master-Child) screen using List Views and Redux
-
Navigation in React Native Apps
- Exploring the libraries for Navigation
- Using the react-native-navigation library
- Connecting Screens, Pushing Pages, Popping Pages
- Adding Tab Navigation
- Adding a Side drawer, Navigation Events, Toggling the Drawer
- Handling User Input
- Moving Between Screens (Stack/Tab/Drawer Navigation)
- Passing Parameters to Routes
- Configuring the headerbar
- Header buttons
- Nesting Navigators
DAY 4
-
Networking
- Exploring the libraries for networking
- Using the Fetch API’s
- Using the Axios library
- Invoking REST API’s using axios
- Handling response body and headers
- Handling errors
- Building a data-driven (Master-Child) screen using List Views, Redux and REST API’s
- Web Sockets for building Real-time applications.
- Securing API communications with
-
Component API’s
- Alert
- Invoking other applications using Linking.
- Scheduling tasks using the Timer API’s
- Executing long running tasks using Interaction manager
- Getting Geolocation info
- Dimensions
- Checking online and offline status using NetInfo
- Exploring various API’s
- Async Storage
-
Native Resources (iOS and Android)
- Separating IOS and android code
- Native Modules
- Native Components
- Integrating third-party native modules to the application
- Building a native module for Android
- Communication between Native and React Native
- React Native Bridge (Accessing native code of Android/iOS)
DAY 5
-
Additional Topics
- Dynamic Links Firebase
- Local and Scheduled Push Notification
- Push Notification with Firebase
- SQLite Database
- File System Access
- ActivityIndicator, StatusBar, SafeAreaView
-
Performance
- Component rendering optimizations
- Common gotchas in application development
- Guidelines and recommendations
- Random Access Modules
- React hooks for Performance
- Profiling using Chrome and Hermes
-
Security
- Understanding security concerns
- Storage security
- Keychain services
- Secure SharedPreferences
- KeyStore
- Secure API communications
- Code Obfuscation
-
Testing
- Unit testing using Jest
- Karma Test Runner
- Integration tests
- Exploring other libraries
- Exploring E2E tools: Appium and Detox
-
Publishing the App
- Adding Launcher Icons
- Adding a Splash Screen
- Configuring & Building App
- Publishing to Google Play Store (Android)
- Generating an IPA
View Other Courses View All Upcoming Trainings