Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I agree with most of the things you've said. But here's the thing: Even if you are able to write native apps in Objective C, Swift, and Java, React Native still saves you an enormous amount of time. And you don't have to do everything in JavaScript.

I'm a web developer who got into native iOS development, and then I built an app with React Native. I was blown away by how much easier it is to build a cross-platform iOS and Android app. But I think it's also a much better choice even if you're just building an iOS app.

But you can't be afraid of writing your own native libraries in multiple languages, or fixing bugs in open source projects. I built a write-once-deploy-anywhere app that runs on iOS, Android, Windows Phone, Windows Desktop, and the web (with react-native-web). It was a pretty magical experience and I would do it again. There were lots of challenges and bugs to figure out, but I enjoyed it much more than working in XCode with Swift and UIKit.

I'll definitely be using React Native for any mobile apps in the future, even if I'm just targeting a single platform (e.g. ARKit on iOS). I just love building the UI with React and managing state with Redux.

It could be a lot better, though. There's just not enough people working on it, and GitHub issues can go unresolved for months or years. And it hasn't been very easy to upgrade to newer versions. But on the whole, React Native is awesome.



I don't think it saves as much time as it's often touted to. I've found the OP's point that you spend double the time to make the write once promise true more of a factor. I believe that what everyone is seeing currently is very small deposits of code being used in new apps. Wait until those apps become 3,4,5 years old and the strain of feature creep will start to show just like it always does in software.

I think the main advantage is the flexibility of it. Just like you said that you "love building the UI with React", then go for it. Personally I love Xcode and Android Studio. The ability to run the app right out of the box, and the performance measuring tools, especially when it comes to threading, are unmatched to what is offered in Chrome. Whatever suits a developer's passion and skill, to enable them to build with a CHOICE of languages and tools, that's the main benefit of React Native. It also introduces a bunch of web developers into Kotlin and Swift, and they might get a taste of it being not as intimidating as they think it is.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: