Comments

Why Developers Like React Native In 2020?

I have been developing React Native apps for the last three years and in this article I am going to describe why developers like React Native and why it is relevant in 2020. You have to take this article with a grain of salt, because it is my personal opinion and comes from my experience using React Native. Ofcourse there are other frameworks and alternatives, but that is out of scope for this article.

Back in 2016, when I started developing React Native apps, it was a whole different world than what it is today. Everything was new, things were not stable and there were lots of problems. But today, React Native has evolved a lot and it provides one of the top developer experience in building cross-platform apps.

1. Code In JavaScript

The number one reason why React Native is so appealing is because your entire app is coded in JavaScript. This is a powerful selling point for a developer. JavaScript has consistently been ranked as one of the most used and popular programming language for several years now. This means if you know JavaScript, you can learn React Native quite easily. Web developers can leverage their existing knowledge in JavaScript to write mobile apps.

2. Uses React

React

React Native, as the name suggests uses React to build native mobile apps. This is the next biggest advantage of using React Native for your mobile development. React continues to be the most popular JavaScript libraries our there to build front end applications. If you are already a React developer, or have a team of React developers, it is only natural for you to pick React Native for building mobile apps. At this point, the learning curve is very minimal. This also means, that all the latest features of React are also a part of React Native.

3. Backed by Facebook

Although React Native was open-sourced in 2015, it is still backed by Facebook. There is a team of developers who work to make React Native better. Last year the React Native team re-architected several underlying areas of React Native and released the Hermes Engine. Hermes is an open-source JavaScript engine optimized for running React Native apps on Android. This drastically improves performance of React Native on Android.

These initiatives have all come from the team at Facebook, hence building a lot of trust in the community. Facebook also uses React Native in many of their products. The Marketplace in the Facebook app is coded in React Native and many more.

4. Superior Developer Experience

The developer experience with React Native has increased exponentially over the years. With React Native some of the tools and features that have helped me have a great developer experience are listed below:

React Native Debugger:

React Native Debugger is an awesome standalone app for debugging React Native apps. It includes React Inspector and Redux Dev tools as well out of the box. The seamless debugging experience is far better than the regular chrome debugging with this app. I highly recommend it if you are developing React Native apps.

Expo:

Expo has played a major role in making React Native better and more usable for developers. With Expo, you can build React Native apps, without touching any of the native code. It is a wrapper on top of React Native, with which you can build apps, without worrying about any of the native code or tools like Xcode and Android Studio. This works out well for developers with no native mobile experience. Expo has plenty of APIs that help you build your app seamlessly.

Expo is the fastest way to build a React Native app, providing a great developer experience.

Fast Refresh:

Fast Refresh is a React Native feature that allows you to get near-instant feedback for changes in your React components. It is enabled by default, and you can toggle “Enable Fast Refresh” in the React Native developer menu. With Fast Refresh enabled, most edits should be visible within a second or two. This speeds up development drastically.

5. Code Once – Build iOS and Android Native Apps

React Native’s cross-platform capabilities is the biggest highlight of the framework.

You don’t need to know Objective-C, Swift, Java or Kotlin to build mobile apps using React Native. With Javascript and JSX you build your app which works very well cross-platforms. From my experience, almost 95% of the code is shared between iOS and Android, with minor tweaks to polish the end product on both platforms. Isn’t that just great? You don’t have to have multiple teams and codebases to support the same app cross-platforms.

Instead, you have one team and one codebase that works on both the iOS and Android versions of the app. This is a huge win for small companies and a cost and time saver.

Moreover the apps that you build are native apps and not web apps. With React Native the underlying widgets are all native components, hence giving the user a seamless experience. This truly makes a huge difference, in comparison with some other counterparts that build web views.

6. Excellent Community

Over the last few years, React Native has gained so much popularity, that there are plenty of developers contributing to make React Native better everyday. The React Native GitHub repo is open source and has over two thousand active contributors. This number is huge for an open source project. React Native is also an extended part of the React community. Most questions one may have, can usually be answered by the general React community, unless they are very specific to React Native.

Stack Overflow is another place which has plenty of resources and questions answered on React Native. You can also join the

I have to mention Expo which has been a huge player in the React Native community. If you wanted the best developer experience with React Native, I would suggest you pick Expo for your app. This means you can get rid of any native coding on your end.

Overall, the community is huge and growing. Many problems have already been solved, and you are most likely not going to re-invent the wheel during your development experience.

Resources

It is an interesting time in mobile development. We are moving away from just native development for iOS or Android and embracing newer technologies that build cross-platform mobile apps. I think 2020 will be a great year for React Native, as the library gets more developers interested in it.

You can checkout my latest course on React Native below:

React Native : The Big Picture 

Other Resources:

https://expo.io/developer-services

https://facebook.github.io/react-native/blog/

https://facebook.github.io/react-native/docs/hermes

I hope you enjoyed this article. See you again with more articles. If you liked this post, don’t forget to share it with your network. You can follow me on twitter @AdhithiRavi for more updates or if you have any questions.

 

Adhithi Ravichandran is a Software Consultant based in Kansas City. She is currently working on building apps with React, React Native and GraphQL. She is a Conference Speaker, Pluralsight Author, Blogger and Software Consultant. She is passionate about teaching and thrives to contribute to the tech community with her courses, blog posts and speaking engagements.
Tags: , , , ,

5 responses to “Why Developers Like React Native In 2020?”

  1. Luka says:

    Great article!

  2. MH says:

    Hi great article! i’m recently learning developing mobile apps with Xamarin.Forms, i have some doubts recently about leaving Xamarin.Forms and switch to React Native! in your opinion is it an upgrade for me? or do i have a future with Xamarin.Forms?

  3. Shrinidhi says:

    Sir please make one short video on Flutter is it good to learn that

  4. Rupinder says:

    Thanks for sharing, Its amazing. I was searching for info like this for a long time! Keep those posts coming! I want to subscribe to your posts and get notified as soon as possible! Awesome job!

Leave a Reply

Connect with Me
  • Categories
  • Popular Posts