React Native

                React native, simply put is the mobile version of the very popular Facebook’s react framework. This is very much true, mainly they both have very similar syntax but there are some distinct differences between them when it comes commons to components, UI rendering, or DOM rendering. React native is in fact a completely different framework after all and it can be difficult for web react developers to jump into without a little trial and error. But compared to a react developer jumping into any other mobile framework or mobile programming language react native is by far the easiest framework for web developers and even frontend developers to start developing mobile applications. So, with that being said, lets first cover some the basic of what react native is and what are its major differences between it and reactJS.

                React native was developed in tandem with React and was released in 2015, react natives biggest difference is that it does not manipulate the DOM via a virtual DOM instead it runs a background process which interprets Javascript directly onto the user’s device via a native platform that uses “serialization, asynchronous, and batched bridge” (1). Basically, meaning it does a lot of translating concurrently in the background without the user noticing to make a beautiful seamless app that can be “ported” over to any mobile OS. The main advantage of react native over using Java with android studio or Swift for IOS is the ability to make native apps that would work for both. React native was by no means the first to do this, the ability to make cross-platform apps in a single framework had existed previously. In contrast Facebook was somewhat resistant to native architecture for a time but realized their mistake of relying too much on HTML, but quickly switched over to native for better and quicker data retrieval to make for a more stable and better mobile experience (1).  

                Now that you have the basic idea and history of react native let us talk about its advantages, big advantages over other mobile development platforms is its ecosystem this allows for cheaper and much quicker development. With the ability to have ready to use components and UI libraries this makes it much easier to develop apps with consistent UX and smooth UI experience (2). Secondly react native  uses Hot Reloading features which you might no as automatic refresh more colloquial if you are a reactJS developer. This gives you the ability to automatically reload when the DOM is changed instead of “dirty checking” react native carries this over which speeds up app development immensely.

            Overall react native is one of the best mobile development platforms out there it does have a few tricky spots compared to react like using animation API instead of CSS and so on. But all together it is one of the easiest mobile development platforms to learn and if you ever thought of developing a mobile app you should give it a try.

Sources:

  1. https://en.wikipedia.org/wiki/React_Native
  2. https://www.simform.com/reactjs-vs-reactnative/#:~:text=In%20Reactjs%2C%20virtual%20DOM%20is,which%20is%20nothing%20but%20javascript.

Leave a comment

Design a site like this with WordPress.com
Get started