I think React Native is a great entry point not only for designers but also for the total beginner. I am recently learning React Native with some colleagues who do not have a prior programming experience. We started with learning JS syntax (some of them already knew it). Surprisingly, all of them did not have no critical problems while learning it. Compared to my experience of trying to study iOS, Android stuffs with a group of non-programmer people, the learners generally are stuck at times with full of frustration.
I think this is due to some of reasons.
- Installation is very straightforward. Especially for Android, the device connection problem often occurs for the beginners, and it makes the beginning very unpleasant.
- The documentation of React Native is just amazing. It even includes realtime preview of code allowing users to learn by modifying the code in the documentation webpage.
- The structure of files and directories are way simpler than iOS and Android. The content of file becomes even simpler by having JSX as a template method, and this gives a lot of advantages toward learnability. Of course, React Native contains the native codes for compilation (each in ios and android folders), but the leaner does not have to know the complex organization of the whole project as an application developer.
- By having more abstract level of fundamental concepts, the codes becomes simpler. Looking back the time I struggled with Android’s adaptor concept, displaying a list of items in effective way is much easier in React Native.
I will further discuss about the learnability of React Native compared to the other platform in the follow-up post after we all complete to build a first app.