You won’t find here anything about how cool guys like Facebook and Netflix benefited from React Native.
Damn close to native performance. Unlike other cross-platform options, like Cordova, Ionic or Titanium that emulate browser app (it’s like having a simulated responsive web app in app market), React Native runs native APIs. There are no tap or scrolling issues, and UI feels like a native app, not like a browser inside the app shell.
So, Swipe in React Native would be completely the same as if you had implemented it in Swift or Java – Source
There are tons of other UI-tool kits and libraries that help you handle performance challenges during the development stages just like in any other mature framework. And as always, you’ll only have to make sure that the library bundles you’re gonna use are frequently updated + don’t forget to study the backlog of existing issues for them.
Huge community. It’s all about developers’ happiness. When a developer cannot handle bugs through googling, the community comes to help. It means that anyone may open an issue on Github — and some magic happens — there’s a ready-to-use solution from someone who’s already faced the same problem before. The happier the devs are,
the easier your life is smoother the project development goes.
That’s all fine and dandy, if focusing solely on superpowers, we would be like door-to-door salesmen. Salesmen who sell shit and try to convince you it’s sweet.
You’d better off see things from all angles. React Native is in no way perfect
Hi there! Wanna find the best app-building tool?
Immature framework. It’s not version 1.0.0 yet, so there
are plenty of missing components and constant updates. For a developer, it means spending much time and efforts to find already-made solutions and incorporate new releases. As for custom stuff (super unique features), he would have to build them on his own and might need Swift and Java experience.
Works poorly with complex animations. Here a dev most likely needs to dig into the native code. Doubt that for MVPs it’s the main concern, though.
Not made for 3D games. Or something that requires physics and heavy graphics, so here you would also have to rely on native mobile app devs.
So, what’s the verdict, guys?
The choice actually depends on the specifics of your future app. To summarize the above, you can opt for React Native when:
- You need an MVP. Say, you wanna start out with just a fancy prototype that lets you test the concept for both platforms and collect initial feedback. For cheap and as quick as possible.
- You need a social app. The framework is suitable for features like camera access, fingerprint, geolocation, and maps.
- There’s nothing about animation-intensive apps. You can easily build nice UX animations with React Native, but when it comes to some outrage stuff like zoom in/out of 10000 objects on a single screen, you’d better stick to native. However, if your app has only UX interactions and transitions between screens —this framework is a solid option.