Duration 5 days – 35 hrs
Overview
This course is designed for individuals interested in learning how to develop mobile applications using the React Native framework. React Native is a popular open-source framework developed by Facebook for building cross-platform mobile applications using JavaScript and React. The course aims to equip participants with the skills and knowledge necessary to create efficient, high-quality mobile apps for both iOS and Android platforms. This course is also designed to provide comprehensive knowledge and hands-on experience in React Native for mobile app development. Each module covers essential aspects to equip participants with the skills needed to create interactive and dynamic mobile applications.
Objectives
- Understand the fundamentals of React Native framework.
- Explore key features and advantages for cross-platform mobile development.
- Install and configure essential tools, including Node.js, npm, and React Native CLI.
- Set up development environments for Android Studio and Xcode.
- Learn the core concepts of React Native, including components, props, and state.
- Master JSX syntax and structure for building user interfaces.
- Implement navigation using React Navigation library.
- Create stack, tab, and drawer navigators for seamless user experiences.
- Style components using CSS-in-JS techniques.
- Implement responsive design practices and theming strategies.
- Create functional and class components.
- Integrate and customize third-party UI libraries for enhanced functionality.
- Manage application state using Context API.
- Implement Redux for advanced state management and asynchronous updates.
- Fetch data from APIs and manage data persistence with AsyncStorage.
- Implement offline data handling strategies for improved app performance.
- Incorporate device features such as camera, geolocation, and maps.
- Implement push notifications for enhanced user engagement.
- Conduct unit testing using Jest.
- Learn effective debugging techniques and performance optimization.
- Build and package mobile apps for both iOS and Android platforms.
- Understand the process of app submission to respective app stores.
- Introduction to CI/CD practices.
- Automate build and deployment processes and integrate with version control systems.
Audience
- Aspiring Mobile App Developers: Individuals with a keen interest in mobile app development.
- Those who want to learn a framework that enables cross-platform app development efficiently.
- Web Developers Transitioning to Mobile Development: Web developers looking to expand their skill set to include mobile app development.
- Those seeking a framework that allows them to leverage existing JavaScript and React knowledge.
- Students and Recent Graduates: Computer science students or recent graduates looking to specialize in mobile app development.
- Individuals entering the job market with a focus on cross-platform technologies.
- Technology Enthusiasts: Enthusiasts who want to explore the capabilities of React Native for creating feature-rich and responsive mobile applications.
- Entry-Level Developers: Those with basic programming knowledge but limited experience in mobile app development.
- Intermediate Developers: Developers with experience in JavaScript and React who want to extend their skills to mobile development.
- UX/UI Designers: Design professionals interested in understanding the technical aspects of turning design concepts into interactive mobile applications.
- Project Managers: Managers overseeing mobile app development projects who want to gain insights into the development process using React Native.
- Entrepreneurs and Start-up Enthusiasts: Business owners or individuals interested in creating their own mobile applications without the need for separate iOS and Android development.
- IT Professionals Seeking Cross-Platform Skills: IT professionals looking to diversify their skill set and explore cross-platform mobile development for business applications.
Pre- requisites
- Basic understanding of JavaScript.
- Familiarity with React concepts.
- Prior exposure to web development is beneficial but not mandatory.
Course Content
Module 1: Introduction to React Native
- What is React Native?
- ReactJS vs React Native? What are the Differences?
- Features of React Native
- Advantages of React Native and Cross Platform Development
Module 2: React Native Tools
How to do Installation and Setup for Mobile App Development to use React Native
(Windows and MacOS):
- Installing Node JS – LTS
- Visual Studio Code
- Android and iOS Emulator
- Git and GitBash
- Expo CLI (For quick React Native compilation)
- Setting your Phone to Developer Mode (Android)
Module 3: ReactJS Fundamentals: Javascript & JSX Programming and the React
Architecture
- Coding from Javascript and React Native
- Javascript Refresher: Variables, Functions, Loops, Types, Conditional Statements, Data
- Anatomy of a ReactJS file
- Primitive Elements in React Native
- JSX
- Debugging
- Error Handling – How to handle errors in app
Module 4: Components in React Native
- Running your first react native app in your device
- Using Expo in Android and iOS
- Creating View
- Creating Text
- Creating Image
- Creating Buttons
- Creating and Mapping Lists
Module 5: App Navigation
- Navigate to a New Screen and Back
Module 6: Styling Layouts
- Text Styling
- Rows and Columns
- Adding Images
Module 7: Adding Interactivity
- Stateful Widgets
- Handling user input
- Using State in React Native – How to create new themes for your apps (ie. Dark Mode)
Module 8: Dealing with Data
- Retrieve Data from Text Input in React Native
- Methods Used to Extract Text from Text Input
- Using Variables
- Using Controller
Module 9: Gestures in React Native
- Gestures
- Layers of Gesture System
- Pointers
- Gestures
- Gesture Detector
Module 10: Introduction to Animation
- What is Animation?
- Classes of Animation
- Tween Animation
- Physics-Based Animation
Module 11: React Native for the Web
- Steps to Create a New Project with Web Support
- Understanding API requests – POST/DELETE/GET/CREATE
- Configuring Axios
- Creating API Requests
- Fetching Data
- Create and Run
- Command Line
- Build
Module 12: Publishing your application
- Creating your Google Cloud Account
- Publishing on Google Play