skip to Main Content

React Native developers, I am looking for guidance for future projects in React Native. I have previously worked with Flutter and I find similarities between the two technologies, I was wondering if there are specific aspects of React Native that I should be aware of due to this previous experience.

It is not necessary to respond to all the recommendations but I am particularly interested in receiving on:

  • State management in React Native.
  • Effective navigation strategies.
  • Testing in React Native applications.
  • Also, can you recommend specific learning resources for each of
    these areas? Either tutorials, documentation, courses, or other
    resources that you consider valuable.

I appreciate in advance any guidance you can offer.


I have been exploring the official documentation of React Native

I was hoping to gain a solid understanding of the key principles of React Native and have a clear idea of how to approach state management, navigation and testing in future projects.

Although I have gained some familiarity, I still have some specific questions about best practices and recommended tools. Therefore, I am looking for additional guidance from the React Native developer community.

2

Answers


  1. React Native is built on React principles, so a lot of the fundamentals translate. I would recommend getting familiar with the core and advanced concepts of React and JavaScript itself, as those will be vital for building a performant application.

    There are many different approaches to the three aspects you mentioned. However there are some libraries that became a defacto industry standard:

    • State Management: While React handles component state out of the box, complex global application state is difficult to handle using the native APIs. Redux Toolkit is a library that focuses on this.

    • Navigation: As of right now the most adopted framework for navigation is React Navigation. Expo has recently released their routing Library expo-router, but it still has to be battle tested.

    • Testing: While I am no expert in this, I see Jest being used the most. There are different plugins available to build integration tests with it too.

    Login or Signup to reply.
  2. State management in React Native:

    Effective navigation strategies:

    Testing in React Native applications:

    • It will cost a lot of effort but it’s worse to setup detox (https://wix.github.io/Detox/)
    • Use component tests
    • In my opinion Snapshot tests doesn’t make much sense in react-native

    Also, can you recommend specific learning resources for each of these areas? Either tutorials, documentation, courses, or other resources that you consider valuable.

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search