CUSTOMISED
Expert-led training for your team
Dismiss
React and React Native Training Courses

26 October 2018

React vs React Native ...

React.js (also known as React or ReactJS) is a popular JavaScript library for building user interfaces. Originally developed by Facebook, it was heavily influenced by Facebook’s XHP, an HTML component framework for PHP. The technology has been open-sourced since 2013.

React is used to create large, fast and scalable web applications. It uses Virtual DOM and a diffing algorithm for rendering, and allows developers to create applications where data that changes over time can be viewed without reloading the page.

The diffing engine makes DOM manipulation extremely fast – faster even than vanilla DOM scripting.

Another feature of React is its unidirectional data flow, where properties are passed from the parent component to child components as a single set of immutable values. This is different from, say, Angular with its more familiar bidirectional data flow. But it does make React applications more predictable and easier to debug if something goes wrong.

Another feature is the ability to build applications out of small, reusable and testable modular components. Many of these components are written using JavaScript eXtension (JSX), but can also be written in pure JavaScript. JSX is familiar in appearance to HTML, which is of course familiar to many developers.

React doesn’t provide a complete application framework as it’s designed just to build UIs. So that means developers can use their own choice of libraries to do other tasks in the application.

Where is React used?

The Facebook website uses React, as do many other high-performing web applications including Instagram, Netflix, WhatsApp, The New York Times, AirBnB and Dropbox.

So that’s React – a front-end, component based JavaScript library for building user interfaces. It’s especially useful for large data-driven applications that interface with Facebook and Instagram, amongst other platforms.

React Native

React Native, on the other hand, is used to develop apps on Android and iOS mobile devices. It was open-sourced in 2015, and its basic working principles are the same as for React, although there are differences. It doesn’t manipulate DOM using Virtual DOM for one thing.    

React Native’s main strength is that it doesn’t rely on WebViews, unlike other mobile application development frameworks such as Cordova. So instead of rendering to the browser’s DOM, it uses Java APIs to render to Android components, or Obj-C APIs to render to iOS components.

What makes this possible is a connector bridge (built in C/C++) that enables the two realms in a React Native application (the Native thread and the JavaScript thread) to communicate with each other. This communication is asynchronous (so the threads never block each other), batched (for optimised transfer) and serializable. 

The bridge allows communication between the realms – even though they’re written in different technologies.

React Native lets developers build native UIs, and is becoming increasingly popular. Apps that use it include Facebook Ads Manager, Instagram, Walmart, Bloomberg, AirBnB and UberEats.

Here at JBI Training, we offer a range of training courses for Front End Web and Mobile App Developers including:

  • React training course (2 days) where you learn to use React and Flux – See our React course outline 
  • React Native training course (3 days) where you learn React Native for rapid mobile app development – See our React Native course outline
  • Android training course (4 days) where you learn to develop powerful apps for Android – See our Android course outline
  • iOS App Development training course (3 days) where you learn to develop apps for iPhones and iPads – See our iOS App Development course outline  

All our courses are practical and interactive – and give you hands-on experience of building actual applications.

 

 

FIND OUT MORE

EMAIL US

About the author: gRAHAM Smith
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

CONTACT
+44 (0)20 8446 7555

[email protected]

SHARE

Corporate Policies     Terms & Conditions
JB International Training Ltd  -  Company number 08458005

Registered address Wohl Enterprise Hub 2B Redbourne Avenue London N3 2BS

POPULAR

Rust training course                                                                          React training course

Threat modelling training course   Python for data analysts training course

Power BI training course                                   Machine Learning training course

Spring Boot Microservices training course              Terraform training course

Kubernetes training course                                                            C++ training course

Power Automate training course                               Clean Code training course