Review of React Native Expo


This capstone course was my first venture into React Native development, and I thought it would be beneficial to recap my experience and go over some of the pros and cons. I have previous experience with the React framework, as well as mobile development experience with Flutter and Dart, so I can make an independent evaluation of React Native specifically.

Expo Logo

Pros

We chose the Expo version of React Native for our project, which is the easiest way to start working with React Native. It requires no native code to write for both iOS and Android, and it also has its own app (called Expo Go) to allow for easy development and deployment.

The beauty of Expo is certainly the ease of use. It is pretty simple and easy to have a working application up in minutes. Additionally, React is a very popular and mainstream Javascript framework, so if you have done some web development there should be no problem in learning React Native Expo. For more simple applications, most work can be done without ever having to write native code. If you do decide that you need to drill down and write some native code for iOS or Android, then you can do that at any time as well by ejecting the project and following the necessary steps as laid out in the React Native documentation.

Cons

While Expo is easy to use and get up and running, it does have its drawbacks. The first would be the last point in the pros, which is that you have to eject the project to be able to write native code. Most projects, even those written with cross-platform languages like React Native and Flutter, will eventually need some native code. React Native does supply that option, but it is outside of the Expo features.

Additionally, any time you are using an option that is so easy to use, you lose some flexibility in the functionality. Expo has tons of premade packages and components you can use right out of the box, but they are a bit less customizable than something you would build natively.

Conclusion

All in all, Expo is a great cross-platform option. If you decide you need to get in the weeds a bit more for a project, you can always eject from Expo and add in the native features you desire. I would definitely recommend Expo and React Native to anyone wanting to develop for mobile!

Here is a link to the official React Native Expo documentation: https://docs.expo.dev/

Print Friendly, PDF & Email

Leave a Reply

Your email address will not be published. Required fields are marked *