React Native: Build Powerful Cross-Platform Mobile Apps
Published 10/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 5.31 GB | Duration: 19h 12m
Published 10/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 5.31 GB | Duration: 19h 12m
Architect and develop engaging mobile apps for iOS and Android using React Native, master core concepts, best practices.
What you'll learn
Understand the React Native ecosystem: Grasp the fundamentals of React Native, its advantages, and how it compares to other mobile development frameworks.
Set up a development environment: Confidently install and configure the necessary tools (Expo, Android Studio) for React Native development.
Master core React Native components: Utilize essential components like Text, Image, TextInput, Button, ScrollView, and FlatList to build user interfaces.
Implement navigation and data passing: Structure multi-screen applications using React Navigation and seamlessly pass data between screens.
Manage application state: Learn to manage complex application state using both React Hooks (like useState) and Redux.
Fetch and persist data: Retrieve data from APIs using Fetch or Axios and store data locally with AsyncStorage.
Style React Native applications: Apply styling techniques, including inline styles, StyleSheet API, and styled-components, to create visually appealing apps.
Implement animations & gestures: Bring apps to life by adding animations and incorporating gesture handling using the Animated API and react-native-reanimated.
Access device features: Utilize device APIs to integrate functionalities like camera access, location tracking, and sensor data into applications.
Incorporate push notifications: Learn to integrate push notifications into React Native apps using Expo's notification services.
Build and deploy applications: Gain the skills to build, sign, and publish React Native apps on both the Google Play Store and Apple App Store.
Extend React Native with native code: Learn when & how to integrate native code (iOS & Android) to extend React Native's capabilities for many functionalities.
Requirements
Enthusiasm and determination to make your mark on the world!
Description
A warm welcome to the React Native: Build Powerful Cross-Platform Mobile Apps course by Uplatz.React Native is an open-source framework developed by Facebook that allows developers to build mobile applications using JavaScript and React. It enables the creation of native-like mobile apps for both iOS and Android platforms using a single codebase. Instead of compiling into web components, React Native components directly compile into native mobile UI elements, providing high performance and a seamless user experience.How React Native WorksReact Native is a popular framework for building cross-platform mobile apps using JavaScript. Let's take a deep-dive into how it works:1. JavaScript and Native CodeReact Native allows you to write the logic of your app using JavaScript, while the user interface is rendered using native components. This means your app looks and feels like a native app, even though it's built with JavaScript.2. The BridgeReact Native utilizes a "bridge" to connect your JavaScript code with the native code of the target platform (iOS or Android). This bridge facilitates communication between the two, allowing JavaScript to access native APIs and UI elements.3. ThreadsMain Thread: This is the primary thread responsible for handling user interface updates and interactions.JavaScript Thread: This thread executes your JavaScript code, managing the application's logic and state.Shadow Thread: This thread calculates the layout of the UI using Yoga, a layout engine that translates Flexbox layouts into native layouts.Native Modules Thread: This thread provides access to platform-specific APIs, such as camera, location, and sensors.4. UI RenderingWhen you write UI code in React Native using JSX (a syntax extension to JavaScript), it's not directly translated into HTML like in React web development. Instead, React Native maps your JSX components to their corresponding native UI components on the platform. This ensures a native look and feel.5. Communication FlowWhen a user interacts with the app, the main thread sends an event to the JavaScript thread via the bridge.The JavaScript thread processes the event and updates the application's state.These updates are then sent back to the main thread, which re-renders the UI with the new changes.Imagine you have two people speaking different languages who need to communicate. The bridge acts as a translator, allowing them to understand each other. In React Native, the bridge translates JavaScript instructions into native code that the mobile device can understand, and vice versa.This architecture allows React Native to provide a truly native experience while leveraging the flexibility and efficiency of JavaScript development.Key Features of React NativeCross-Platform Development – Write one codebase that works across both iOS and Android.Native Performance – Uses native components for rendering, ensuring near-native performance.Hot Reloading – Allows developers to see changes in real time without restarting the application.Reusable Components – Leverages reusable UI components to build apps efficiently and reduce development time.Large Ecosystem – Supports third-party libraries and has a rich ecosystem of plugins and tools.Active Community – Backed by a strong developer community and maintained by Facebook, ensuring constant improvements.Why is it Beneficial to Learn React Native?Efficiency - By developing for both platforms with one codebase, it reduces development time and cost.High Demand - Companies are increasingly adopting React Native due to its versatility, making it a valuable skill in the job market.Scalability - React Native's architecture makes it easy to scale apps, from simple projects to complex mobile applications.Growing Ecosystem - The framework continues to evolve with a strong community and vast resources, ensuring support for both new and experienced developers.Native-like Experience - Provides the performance and user experience of native apps, making it a top choice for cross-platform development.React Native - Course Curriculum1. Introduction to React NativeOverview of React Native and comparison with other mobile frameworks.2. Getting Started with React NativeInstalling Expo and creating your first React Native app.3. Mobile Development BasicsUnderstanding the mobile app development lifecycle.4. Native vs React NativePros and cons of native app development vs React Native.5. Setting Up Android StudioDownload and install Android Studio and set up a virtual device.6. Styling in React NativeExploring different styling techniques for React Native apps.7. Core Components: Text, Image, and InputLearn to use the Text, Image, and TextInput components in React Native.8. Managing State with HooksIntroduction to state management using the useState hook.9. Working with Buttons and Touch EventsLearn to implement interactive buttons and touch gestures.10. Scrollable ViewsImplementing ScrollView, FlatList, and SectionList.11. Building a To-Do List AppCreate a simple To-Do List app using FlatList and styles.12. React NavigationImplementing navigation using React Navigation with stack and tab navigators.13. Passing Data Between ScreensLearn how to pass data across different app screens.14. Handling Navigation StatesManaging navigation state in complex apps.15. Working with Nested NavigatorsUsing nested navigators in a multi-screen app.16. Customizing NavigationCustomizing headers and navigation options for a unique app feel.17. State Management with ReduxIntroduction to Redux and its use in React Native for state management.18. Fetching Data from APIsUsing Axios or Fetch to retrieve data from external APIs.19. Persisting Data with AsyncStorageLearn to persist data locally using AsyncStorage.20. Building Data-Driven Apps with ReduxBuilding scalable apps driven by Redux and Context API.21. Advanced Styling with Styled-ComponentsSetting up and creating reusable styled components.22. Animations in React NativeIntroduction to animations using the Animated API, including fade, scale, and translate animations.23. Handling GesturesImplement complex animations and gestures using react-native-reanimated.24. Working with Device APIsAccess device features like the camera, location, accelerometer, and gyroscope.25. Push Notifications with ExpoLearn to set up and handle push notifications in React Native apps.26. Playing and Recording MediaWorking with audio and video files, and recording media in React Native.27. SQLite and Local DatabasesLearn to create and manage local databases using SQLite.28. User AuthenticationImplement login, logout, and user authentication in React Native apps.29. Optimizing PerformanceTechniques for improving app performance and profiling with Expo.30. Building and Deploying AppsSteps to build, sign, and publish your React Native app to Google Play and the App Store.31. Ejecting from ExpoWhen and why to eject from Expo to the bare workflow.32. Native Code IntegrationWorking with native code in React Native for both iOS and Android.
Overview
Section 1: Introduction to React Native
Lecture 1 Introduction to React Native
Section 2: Getting Started with React Native
Lecture 2 Getting Started with React Native
Section 3: Mobile Development Basics
Lecture 3 Mobile Development Basics
Section 4: Comparison between Native and React Native
Lecture 4 Comparison between Native and React Native
Section 5: Android Studio
Lecture 5 Android Studio
Section 6: Set Up Expo CLI and Run the First Expo Project
Lecture 6 Set Up Expo CLI and Run the First Expo Project
Section 7: Styling with React Native
Lecture 7 Styling with React Native
Section 8: Text, View and Image Components
Lecture 8 Text, View and Image Components
Section 9: TextInput Component
Lecture 9 TextInput Component
Section 10: State with useState Hook
Lecture 10 State with useState Hook
Section 11: Buttons and Touch Events
Lecture 11 Buttons and Touch Events
Section 12: ScrollView
Lecture 12 ScrollView
Section 13: FlatList and SectionList
Lecture 13 FlatList and SectionList
Section 14: To-Do List App
Lecture 14 To-Do List App
Section 15: React Navigation
Lecture 15 React Navigation
Section 16: Stack and Tab Navigation
Lecture 16 Stack and Tab Navigation
Section 17: Customizing Headers and Navigation Options
Lecture 17 Customizing Headers and Navigation Options
Section 18: Passing Data Between Screens
Lecture 18 Passing Data Between Screens
Section 19: Handling Navigation State
Lecture 19 Handling Navigation State
Section 20: Working with Nested Navigators
Lecture 20 Working with Nested Navigators
Section 21: Setting Up Drawer Navigation
Lecture 21 Setting Up Drawer Navigation
Section 22: Implementing Modal Navigation
Lecture 22 Implementing Modal Navigation
Section 23: Multi-Screen App with Different Navigation Methods
Lecture 23 Multi-Screen App with Different Navigation Methods
Section 24: Context API
Lecture 24 Context API
Section 25: Redux in a React Native App
Lecture 25 Redux in a React Native App
Section 26: Fetching Data with Axios or Fetch API
Lecture 26 Fetching Data with Axios or Fetch API
Section 27: Handling Loading States and Errors
Lecture 27 Handling Loading States and Errors
Section 28: Persisting Data using AsyncStorage
Lecture 28 Persisting Data using AsyncStorage
Section 29: Data-Driven App using Redux and Context API
Lecture 29 Data-Driven App using Redux and Context API
Section 30: Setting up Styled-Components
Lecture 30 Setting up Styled-Components
Section 31: Creating Reusable Styled Components
Lecture 31 Creating Reusable Styled Components
Section 32: Basics of Animations in React Native
Lecture 32 Basics of Animations in React Native
Section 33: Using the Animated API
Lecture 33 Using the Animated API
Section 34: Fade, Scale, and Translate Animations
Lecture 34 Fade, Scale, and Translate Animations
Section 35: React Native Gesture Handler
Lecture 35 React Native Gesture Handler
Section 36: Complex Animations and Interactions
Lecture 36 Complex Animations and Interactions
Section 37: react-native-reanimated and react-native-screens
Lecture 37 react-native-reanimated and react-native-screens
Section 38: Animated Splash Screen and a Carousel Component
Lecture 38 Animated Splash Screen and a Carousel Component
Section 39: Working with the Camera API
Lecture 39 Working with the Camera API
Section 40: Using the Location API to get Device Location
Lecture 40 Using the Location API to get Device Location
Section 41: Accessing Device Sensors (Accelerometer and Gyroscope)
Lecture 41 Accessing Device Sensors (Accelerometer and Gyroscope)
Section 42: Setting up Push Notifications in a React Native app using Expo
Lecture 42 Setting up Push Notifications in a React Native app using Expo
Section 43: Handling Notifications in React Native
Lecture 43 Handling Notifications in React Native
Section 44: Managing Notifications in the Background
Lecture 44 Managing Notifications in the Background
Section 45: Playing Audio and Video Files
Lecture 45 Playing Audio and Video Files
Section 46: Recording Audio and Video in React Native using Expo
Lecture 46 Recording Audio and Video in React Native using Expo
Section 47: Building a Media App in React Native
Lecture 47 Building a Media App in React Native
Section 48: SQLite App
Lecture 48 SQLite App
Section 49: User Authentication in React Native with Expo
Lecture 49 User Authentication in React Native with Expo
Section 50: Techniques for Improving Performance
Lecture 50 Techniques for Improving Performance
Section 51: Using the Profiler in React Native with Expo
Lecture 51 Using the Profiler in React Native with Expo
Section 52: Building and Signing APKIPA Files in React Native with Expo
Lecture 52 Building and Signing APKIPA Files in React Native with Expo
Section 53: Publishing Apps to Google Play and App Store
Lecture 53 Publishing Apps to Google Play and App Store
Section 54: When and Why to Eject from Expo in React Native
Lecture 54 When and Why to Eject from Expo in React Native
Section 55: Migrating from Managed to Bare Workflow in React Native with Expo
Lecture 55 Migrating from Managed to Bare Workflow in React Native with Expo
Section 56: Working with Native Code in React Native
Lecture 56 Working with Native Code in React Native
Beginner to intermediate programmers: Individuals with some basic programming knowledge, especially in JavaScript, who want to learn mobile app development.,Mobile app developers: Those experienced in native mobile development (iOS or Android) who want to learn a cross-platform framework.,Web developers with React experience: Developers familiar with React who want to leverage their skills to build mobile apps.,Front-end engineers: Expanding skillset to include mobile app development with React Native.,Full-stack engineers: Adding cross-platform mobile development to their repertoire for end-to-end project ownership.,Entrepreneurs and business owners: Individuals with app ideas who want to learn how to build their own apps.,Anyone aspiring for a career in mobile app development,Students and those looking to upskill: Anyone interested in expanding their skillset and entering the mobile app development field.,UI/UX designers: Gaining a better understanding of the technical implementation of their designs in a React Native environment.,QA engineers: Learning React Native to better understand the framework and write more effective tests.