React-native — transpiled , pure native or hybrid ?

Sahil Sharma
2 min readMay 12, 2016

--

After loads of googling I finally did crack the exact difference and concept behind the three terms referred in the title of the post. So lets try and figure out what all these terms mean with examples of the technologies that are using these ideologies.

First lets go through the basics of mobile development. Lets keep our focus only on android and iOS. Android exposes it SDKs(Software Development Kit) in java and hence ,the apps on android are written in java as well. Similarly iOS, exposes its SDKs in Objective C, which again means that you should know objective C to build iOS apps. On top of that Apple has now released swift( easier and more javascript like in syntax) also used for iOS app development. These are the pure native technologies and hence you need to learn each one for each platform you build an app for.

Next lets discuss hybrid apps. These are the apps written in cross-platform technologies ( like cordova) . These technologies are based on some web technologies. For example , ionic based on angularjs. But how does it then run as an app if it is based on a web technology? The answer is that , all the code , i.e. angularjs code in case of cordova , stays as it is and gets rendered in a web view in a mobile device. So what this means is that when you create a cordova app, it just creates an icon ( which is actually something just like a desktop shortcut) and under the hood, it launches a web view (just think of it as a web browser) and renders your website which looks like an app to the user. So in short even it is just a website disguised as an app. The problem with this approach is that however powerful the webviews (browsers) are these days , they still can not compete with the power of the native components that the mobile OS provides and hence the performance takes a hit.

Lets discuss transpiled technologies in the next post and also discuss where does react-native fall amongst all these categories.

--

--