React Native is an open-source mobile application framework. It is used to develop applications for Android, Android TV, iOS, macOS, tvOS, Web, Windows, and UWP by enabling developers to use React's framework along with native platform capabilities.
This competency area includes integrating framework knowledge with business logic, bebugging React, catching unexpected errors, managing state container using Redux, among others.
- Business Logic - Integrating framework knowledge with business logic.
- Debugging React - Identifying problems based on error messages, deep knowledge of syntax and semantics, knowledge of common errors in renders, state management, etc.
- Hooks (useEffect with dependencies, useLayoutEffect, custom hooks) - Using useEffect with dependencies to limit new renders, use useLayoutEffect and create and use custom hooks.
- Error Boundaries - Catching unexpected errors and display a fallback UI.
- React Context API - Creating and using context to pass information to descendants
- Global State Management with Redux - Creating and managing state container using Redux
- Dynamic Styles based on Platform - Altering the style of the app based on the platform it runs on (Android, iOS, etc.)