Not only am I—along with the rest of the development community—extremely pumped about React Native, but the amazing benefits of this emerging technology extend to mobile app development customers as well.
The Benefits of React Native
In 2015, Facebook released its mobile UI framework React Native, and it’s made great strides—with Walmart, Bloomberg and Instagram among the many companies building apps on it. The biggest benefits of React Native are that it saves time, improves code quality and has increased the developer talent pool.
1. Saves Time
When developing apps in the past, companies needed to assemble and manage two teams and two different codebases. This led to siloed teams and slower build times. With mobile UI frameworks like React Native, engineers can code for both platforms using one language with one codebase.
Underneath the hood, the frameworks transpile the code down to Objective-C and Java. Beyond having just one codebase, the developer ergonomics—the ease of being able to simply code—are amazing and allow for rapid development and iteration.
For customers, this translates to a shorter development timeline and faster time to market.
2. Improves Code Quality
When it comes to React Native apps, you’re dealing with less code, which subsequently reduces the opportunity for bugs. Developers have the chance to do declarative (functional) programming versus imperative, which means easier testing and fewer bugs. It’s also worth mentioning that Jest—what Facebook uses to test all JS code and React applications—is relatively easy to understand.
3. Increases Talent Pool
Subsequently, talent requests for React Native app developers have increased by 18.1% between 2016 and 2017 (Toptal via Software Development Times). This means more work opportunities for developers and a larger pool of talented developers to choose from.
As a newer technology, React Native isn’t perfect. But even with minor challenges and limitations, the positives far outweigh any negatives.
React Native in Action
Recently at Perfect Sense, we saw the benefits of React Native while developing a mobile application for an outdoor company. Our work on this app kicked off with iOS development. Once that was complete, React Native compiled the codebase, enabling us to begin development on the Android version of the app at 80% complete. Because we chose to use React Native, the entire project took us one-third of the time it should have.
Both versions of the app are powered by our next-gen content management engine, Brightspot. With Brightspot, internal stakeholders can publish content one time from a single-authoring tool and have it automatically publish on both versions of the app. Brightspot serves a data API that is easily consumed by React Native.
What the Future Holds
Google announced in February 2018 that its new mobile UI framework Flutter is now in beta. While it’s too soon to know which framework will win out as the better option, it’s clear mobile UI frameworks such as these are the future of mobile application development, as we continue to move toward creating apps as quickly as they can be dreamed up.