ABOUT DOCUMENTATION CONTACT

How React Native Enabled Us to Develop a Mobile App in a Third of the Time

It’s an incredibly exciting time in mobile development. Up until recently, Native mobile apps were primarily built in either Java for Google Android or Objective-C/Swift for Apple iOS. But with the emergence of frameworks like Facebook’s React Native, developers can now build mobile applications in JavaScript with one programming language, with just one codebase.

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 the framework. 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 code bases. 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 just one code base, 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 vs. imperative, which means easier testing and less bugs, as well. It’s also worth mentioning that Jest—what Facebook uses to test all JS code and React applications—is relatively easy to understand.

3. Increase Talent Pool
This is the part I'm the most excited about. With React Native, developers can build mobile apps using Javascript. Javascript is ubiquitous for front-end engineers and relatively easy for back-end engineers to pick up. For developers, this opens up the door for more front-end engineers to try their hand at mobile development for the first time.

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. This meant that because we chose to use React Native the entire project took us one third of the time to complete.

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 that mobile UI frameworks such as these are the future of mobile application development, as we continue to move towards creating apps as fast as they can be dreamed up.

Get the publishing speed you need with Brightspot.