I spent over a year learning Swift, Xcode and everything else. After researching React and React Native, I made a decision and haven’t looked back.
Some people really love Xcode. I did, and still do. It is incredibly well thought out and detailed software. That could also be why it’s so mind numbingly slow.
After developing some relatively simple Swift 3 apps and a more complex Swift 4 app, I also found Xcode bloated, sluggish and frustrating beyond belief. Xcode is right next to hot chips on my unhealthy activities list.
The most infuriating part of Xcode was the fact that most problems were solved by simply restarting the application. This was satisfying at first, but after several times it gets old; why doesn’t it just work?
The thing that appeals to me about React is the component approach to development. Pair that with the “write once, publish anywhere” philosophy and the insanely fast hot reload ability, React and React Native just works for me. Throw in the support and backing from Facebook, and you’re part of an engineering marvel.
Prototyping is faster than ever, my UI designs are far more effective now than before because I feel I have more creative control than ever before. This power over styles is underrated in most of what I read about React Native apps, which baffles me. When I read through reviews on the App Store it is common to see users commenting on the user experience, clean interface and smooth performance. This reflects what I see as developers and entrepreneurs being able to use the powerful styling abilities React Native brings into full effect on the App Store.
Every developer thinks differently (excuse the throwback), and I know some developers read Swift and Objective C as easily as you’re reading this. I am not one of those. When I started experimenting in React though, it was like flicking a switch. It was perfect! Something about the organisation, documentation and use of JSX just clicks for me.
Another huge advantage of React Native is the performance. This isn’t PhoneGap or Cordova, this is native performance! And to soften the blow of moving from Swift and Xcode, for most projects I can still write in native code. My most recent project requires this and I can confirm, the ‘eject’ process is smooth and painless. At least for iOS.
I recommend trying React Native!