Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Don't be confused React Native IS NATIVE, and has similar performance to native too.
It of course runs from an interpreted language (with JIT compiling) but that isn't a bottleneck.
Hybrid refers to apps that use a webview in order to render the UI, rendering HTML/CSS is slow on mobile and that is a bottleneck.
React Native uses native UI components giving you native performance while maintaining the Hybrid app benefits like, sharing the same codebase for iOS and Android, and delivering updates through private means without needing to push new versions to Google Play or the AppStore.
Don't know much about Kotlin sorry
Long live native!
I am kinda confused on how to differentiate between acknowledged first-class language from google and other options mentioning "native" build like React. I mean Ionic v2 also mentioned that their build are also "native".
But hey, thanks for the info, it helps! 😃
@greenrobo In my opinion, don't think about non-native solutions unless you are developing cross platform app.
Ionic app doesn't compile to native code, it runs in a webview container, but it can access some of the native apis. If you know angular, you can try NativeScript which is like react-native but in Angular and it compiles to native code. Good luck.
@greenrobo I would say that there is Native (Xamarin, Kotlin, Java, Cocoa, Swift, Objective C), Hybrid (Ionic, Phonegap, Cordova) and a middle ground (React Native, Flutter, NativeScript?)
Hybrid use a webview to display content, they are programmed mostly in JS or other interpreted language.
Native, use native views and are programmed in lower level languages with platform dependant APIs, so they are, most of the time, not cross platform
The middle ground combines native views with an interpreted language like JS or similar, using a common API through many OS
React Native is a pretty good solution for a code once deploy everywhere (mobile).
But yes Web is the only true-crossplatform platform... But that is hard to accomplish too, and has it's own performance penalty and compatibility issues.
There is no true single solution, go with whatever works for you.