When comparing Codename One vs React Native, the Slant community recommends React Native for most people. In the question“What are the best tools for making a cross-platform application?” React Native is ranked 12th while Codename One is ranked 17th. The most important reason people chose React Native is:
Ranked in these QuestionsQuestion Ranking
Pro High performance
Pro Open source
Pro Highly customizable
By utilizing lightweight component architecture and the built in graphical designer and theming options you are able to customize a good looking app on any platform.
Pro Java 8 support
Pro Works with all IDEs
Works with NetBeans, Eclipse, IntelliJ, etc.
Pro Multi-platform development environments (via build server)
You can even use Linux desktops to build native iOS apps, no need for a Mac.
Pro Vibrant & helpful community
Pro Attractive pricing
It is possible to build production grade apps even with the free version. Pricing is decent when compared to competitors like Xamarin.
Pro Allows you to develop native apps
Pro Backed by Facebook
Facebook writes their mobile apps in React Native so the code base gets pretty thoroughly used in some highly demanding scenarios.
Pro More predictable control of the state
The one way data flow, makes it more predictable and easy to control.
Con If core team doesn't use a certain feature, it's not developed
Whenever there's functionality you need that they don't use in their apps, it's not going to get developed by them, even if it's obvious it should be in the core. They always say to either submit a PR or create a separate module.
Con Steep learning curve
Con Many existing JS libraries are not usable on React Native; not exactly a 1-to-1 experience to writing React either
Example: Library that provides a full calendar with agenda view.
Con React native only supports react which is getting old
React native is only based on react which is getting old. An old tech developer can't take much breaking changes so it gets more patchs. There is a limit, and react is too verbose and complex. better alternatives available today.