Which one will you choose? Assume that you have good knowledge of React and you are using React components in your web apps.
Swift has already won the battle with Objective-C. Developers love to use this quick and reliable language as it diminished many issues like memory management, code length, Namespace and many more. Developers love to adopt this because they don’t have to remember so many things like they do with Objective-C. Swift is getting high in popularity index and this high performance language is highly recommended for Startups.
I'm using RN for managing data and navigation and JUCE for audio and custom animated views. Working well so far, after ironing out configuration issues. I've settled on wix/react-native-navigation for my navigation, pure JS navigation is just too slow on an iPhone 4S. I started in Objective-C, then moved to Swift and finally settled on RN partly so that I can easily port it to Android. React Native and Redux make a lot of sense to me now.
React Native allows you to freely mix Swift / Obj-C controllers with pure JavaScript components. Developing in pure JS is MUCH faster than in Swift / Obj-C imo because of CSS layout model. I can use NPM, Cocoa Pods, Carthage and all of that plays nice together. There is nothing like RN for me. I am more productive and when I need some custom libraries I can easily bridge them from Objective-C to JavaScript (React Native has excellent bridging possibilities facebook.github.io/react-native/docs/communicatio…). I did some beacon apps, ecommerce and such in RN and it was always a pleasure, fun and profit. :)
I'm surprised that Objective-C has such low representation. There must be a huge number of developers who are comfortable with it now. Looking forward to supporting legacy apps for a few years.
If it's a somewhat complex app, I would recommend against anything but Swift or Objective-C, (Swift if you're starting entirely from scratch), because otherwise you app will simply not stack up against your native competitors in one way or another - you're at a disadvantage here, you'll always feel "not quite right" in some ways to your customers, especially if you plan to charge for the app.
If what you're building is just a mobile view into an existing web app, then React Native or Ionic, PhoneGap etc. are perfectly acceptable.
How about ionic, sent touch, meteor, cordova/phonegap, native script, and kendo ui to throw into the mix?
Robert Laverty
Bro, do you even blockchain??
you forgot NativeScript :O