Times change, and so does technology. Five years ago we built our field service app FieldBuddy. Back then, the choices for an architectural framework were limited. We could either build a native or a hybrid app. As we wanted our app to be available on all platforms, a hybrid application (Sencha Touch) was the best option. This required a single source code for all platforms, and used Cordova; a cross-platform framework that took care of delivering a uniform UI.
New players
Over the years, new players entered the market with future proof app frameworks. One of them was Facebook. Two years ago, they introduced React Native. As the name suggest it was designed for the creation of ‘Native’ apps for Android and iOS using their open source JavaScript library for building user interfaces ‘React’.
At the same time, Sencha announced the merge of Sencha Touch with Ext JS. To us this meant that our technology of choice was no longer supported. Therefore, we decided to compare their new solution with other solutions on the market.
Native vs. hybrid
We started with an inception, to reconsider our company goals and discuss our expectations for the future. At the same time, our development team researched the different solutions and created a matrix that entailed all the elements that our new framework required. Based on this matrix we could easily compare the different options available.
The research showed that Sencha Ext JS and React Native were the best match for our current and future needs. These were the main highlights that made us decide on these two platforms.
Sencha Ext JS | React Native |
---|---|
Uniform UI Cross-platform (Cordova) | UX aligns with the platform (native touch) |
Commercial support | Leverage of the platform Community |
Single source-code for each platform | Developer’s experience |
Reliable set of components | Open-source libraries |
JStable | Modern JavaScript ecosystem including advanced debugging options |
Used by Ionic, Xamarin, NativeScript | Advanced debugging options |
Proof of concepts
So it was time to put our research to the test, during a proof of concept of both frameworks. We created different views and scenarios and demonstrated them to the entire team. Although both frameworks had their pros and cons, there could only be one winner.
And the winner is…
We all agreed that there was one framework that really stood out. It has the best UI, it stunned our developers due to the ease of use and it has an enormous community of skilled developers. Can you guess already? Yes, we chose React Native.
Best of both worlds
To us, React Native combines the best of both world. It has the user experience of the native mobile platforms, and the developer experience of building web applications. It still uses JavaScript, but instead of being a webapp it is translated into native UI code. This way it becomes a real native application. There is just no Cordova app that matches the look and feel of a real native app. React Native apps are indistinguishable from an app built using Objective-C, Android, or Swift because it uses the same fundamental UI building blocks as regular iOS and Android apps.
It performs better than a hybrid application and provides access to platform specific UI-components, like maps, datepickers, switches, and navigation stacks. And that is what users expect from an application these days. That is why React Native is our technology of choice.
Check out these Native UI components:
Read more
If you’re curious to see what can be accomplished with React Native, check out this showcase page. Do you want to learn to build apps using React Native, check out their Docs. It teaches you all the basics you need to know.
Excited?
Are you as excited as us and would you love to work with this amazing technology? Check out our vacancies!