React Native is great, because it provide superior DX while being able to provide native experience in apps. But what exactly is native?
A native application can probably be defined as following,
- It should feel at home on a device, using familiar UI, patterns and performance
- It should be able to take advantage of full functionality in the OS
Let’s focus on the first point, because we know we can take advantage of of full OS functionality in React Native.
There seems to be a misconception that when you write native Java/Obj-C/Swift code, it makes the app native. Probably in a developer’s mind it does. But the language doesn’t matter to the user. If the same feature is implemented in JS and the user can’t tell the difference, does it really matter? Nope.