React Native vs. Native App Development — Pros and Cons for Business

This is an excerpt from my interview, read more at Polidea’s website.

What is React Native? React Native is a framework created by Facebook to enable a smooth and easy cross-platform mobile development. It basically means that you don’t have to create an iOS and Android app separately. All you need is one codebase to develop beautiful apps for both platforms, without compromising on the UX and UI experience.

Today, the biggest companies in the world recognize more and more the React Native’s potential for business. What are those benefits? Is React Native the right solution for you? Is it better than the native development? We sat down with our Head of Client Services Szymon Nieradka to answer these and more React Native iOS and Android related questions.

How is React Native different from the native mobile app development and why is it becoming more and more popular?

The dream of having one framework that will cover all platforms was with the industry for years. Making that dream come true, however, used to be impossible. In fact, we were struggling with doing mobile cross-platform development for many, many years.

Regarding the web development, you access most of the functions on your laptop using one application — a web browser. Nobody questions HTML’s (to be more precise HTML5, CSS and JS) dominance since it’s a certain standard.

Mobile development went in a completely different direction. Fifteen years ago no one had an idea how to build an interface in mobile apps. We all remember how Symbian looked, and the differences between iOS and Android in the beginning. Back then it was super hard to prepare one framework that somehow would be useful on all other platforms. There were of course frameworks like Xamarin, PhoneGap and bunch of others that did their best to achieve that goal — but none of them was really good.

Nowadays, a few things have changed, especially when it comes to the UI. The efficiency of devices has increased and the market fragmentation decreased — there are only two players: Android and iOS. Only four years ago we were creating a mobile banking app for the largest Polish bank for iOS, Android, WindowsPhone, Symbian/Java and Blackberry…

I believe that React Native is the very first framework that allows us to create a mobile app, which will work both on iOS and Android when we don’t have to compromise on speed, efficiency and their overall look and feel.

The React Native app’s great look and feel depends in the end on the abilities of the developers. You need the right partner to work with and that part will never change.

Is React Native better than native?

There’s no yes or no answer here.

Last month we’ve started a few new projects. Two of them involve a pure native iOS development and one of them is a React Native project. We were wondering which approach is better for all of them — native or cross-platform development. The answer is: it all depends on the project.

If the client says, that the only platform they are interested in is iOS, then it doesn’t make sense to make it in React Native. If they are expecting to utilize platform specific features (such as iOS ARKit) then React is still not the best option here.

So sure, there are cases when we don’t recommend the cross-platform development. However, the fact is, that in around 80% of real business cases React Native can increase the speed of mobile development by 30%, sometimes even 40%. These numbers come from our projects, not from thin air, which is why I’d recommend it for most cases.

I have an app to develop. Why should I do it in React Native?

It is faster (therefore cheaper), and you don’t have to compromise on application’s features. It’s also easier to maintain. Once you find a bug, you can solve it in one place for both platforms simultaneously.

Does it affect the code’s quality and the end product’s overall look?

To be honest, it’s super easy to make a really ugly and slow native app — all you have to do is work with inexperienced designers and developers. Luckily, as I mentioned before, you don’t have to compromise on UI while using React Native.

We believe that only mobile app developers with a strong native background can prepare seamless mobile experience in a React Native application. Since they have a native experience, they know what to expect from the app.

All of our React Native developers have strong technical experience with native codes. They are former Objective-C, Swift, Kotlin and Java developers and because of that, they would never deliver something that would compromise on performance, quality etc.

The React Native app’s great look and feel depends in the end on the abilities of the developers. You need the right partner to work with and that part will never change.

Of course, there are edge-cases where React Native is not the best option. In one of the projects we were working on last year, our customer asked us for an animated background that will look like a ‘spilled gasoline on water’ and will respond to the phone’s moves. And of course, this animation should not affect battery usage. We did it in OpenGL for Embedded Systems.

This is an excerpt from my interview, read more at Polidea’s website.

Project Manager / Agile Coach / MBA / Windsurfer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store