Looking for top software development talents? They are just a few clicks away.

What To Expect From React Native in 2020? [MOBILE DEV PERSPECTIVE]

Jan 72 min read

Vitalii Danylov

Senior Frontend Developer at Ideamotive.

React Native In 2020

React Native In 2019 - Summary

It was a good year for React Native.

In the mid of 2019 with the release of 0.60 version, we got a bunch of new cool changes and tools: 

  • start screen was changed to more informative;

  • we got the Android X (!);

  • main packages were moved to separate repositories, what rapidly increased support and development of these repositories;

  • Helper got its long-awaited update; 

  • CocoaPods became part of React Native IOS project; 

  • And last, but not least: the auto-linking of native modules was introduced. We were especially happy to welcome this one!

All in all: not bad, right?

 

The aforementioned support of Android X wasn’t the only change for Android roadmap. Facebook has also introduced a JavaScript engine specially optimized for React Native, Hermes

Thanks to Hermes, Android apps launch faster, consume less memory and are significantly lighter in size. 

rn2020

What I really liked personally, is that with version 0.61 we got properly working Fast Refresh feature, which was created to replace Hot Reloading and Live Reload. Also, in the mid of November React Native core team announced the launch of React Native doctor, which makes updates and migrations less painful.

Also, it was announced that Flipper will be available in version 0.62 by default! For those of you who don’t know it (and I really recommend changing that!), Flipper is a platform for debugging mobile apps on iOS and Android. You can use it to visualize, inspect, and control your apps from a simple desktop interface. Long story short - pretty useful tool that every RN dev deserves.

(PROTIP: If you are not very patient, you can follow this link with the tutorial from one of the creators to add it to your project right now)

It looks like React core team is doing a great job as they constantly try to deliver the best developer experience for their library.

So, what should we wait for in 2020?

React Native In 2020 - What Can We Expect?

2020 will be all about introducing the new architecture to the framework.

The news about the new architecture was already released in 2018 (if you want to know more please check this amazing talk by nparashuram) but this year, during React Native EU 2019 Emily Janzer from React Native developer team shared their specified plan for 2020.

According to Emily, React Native will have new architecture introduced in 2020 and the process will be delivered in three separate phases:

Phase 1: Early 2020

Mostly concentrated on Native Modules, the next improvements will be added:

  • Type-safe – improvement of type safety between JavaScript and native code

  • Less overhead – while calling native methods from JavaScript

  • Faster Startup: lazy initialization of native modules by default

Phase 2: New renderer (Fabric) - Mid 2020    

This is a new thread-safe implementation of React Native UI layer rewritten in C++.

  • better native interoperability

  • improved UX of core components

  • Type-safe – an interaction between UI managers and JavaScript

  • Faster Startup

Phase 3: New initialization path - Late 2020

Facebook is working on the new set of APIs for initializing React Native, which will be explicitly depending on the new renderer and the new native module system and doesn’t use the bridge or any additional infrastructure. 

The goal is to significantly improve startup time, so the fight is worth fighting. 

Another important update will be JavaScript Interface JSI. JSI is how we can interact with JavaScript engine from C++ and other languages used for native development. It’s engine independent API, so it works for JSC and Hermes.

It can be used for:

  • create JS runtime

  • load JS bundle

  • calling functions between C++ and JS

  • create and access JS objects from C++

I am very excited to see the new changes in the architecture coming. From what the React Native core team is telling us, it seems that we can count on native interoperability, increased performance, shorter startup time, and overall higher reliability and predictability during the development process and after the launch.

All in all - the future looks bright for React Native developers!

 

(featured illustration by Rachel Nabors) 

Vitalii Danylov

Vitalii is an veteran frontend developer and mobile developer (with the special <3 for React Native) who likes to explore new technologies, test new tools and discover new approaches.

View all author posts

Take your business to the hypergrowth phase.

Work with software development experts from Ideamotive's talent network.