Ata Sasmaz

Software Engineer
atIBMin Dublin, Ireland

How your project can take advantage of React.js

« Home

React.js is the latest and fancies library for developing web and mobile UIs from Facebook. It replaced Angular.js for me. Angular still has a good market but if I'd start a web project today that is with React.js.

(1) React.js allows a page to be constructed as re-usable components. So we split the page into nested components, then React combines them as they are needed on the page. It provides fascinating power with reusable components.

(2) Another innovation is server-side rendering. The concept is not new but React provides full-support for this. Basically with these client-side UI libraries the UI could only be constructed on the client side but this requires all the javascript libraries to be fetched and executed, then the page can be constructed. With React we can do this on the server-side and for the initial page opening we can just provide the end result as HTML, then React-client-side takes over from there.

Angular started supporting this with Angular 2.0, which is still in beta, but it was very interesting for a project from Google like Angular to not support server-side rendering because Angular is known with its issues on Google Search. Pages using Angular are not well indexed because they were only constructed on the client-side and Googlebot does not execute all the javascript on the pages, it only executes some of subset of functions.

Server-side rendering also provides blazing speed for opening the initial page because user is not waiting for javascripts to  load, execute and generate the page as page is already generated on the server.

(3) React provides something called Virtual DOM. While other UI libraries making changes to the DOM directly by updating UI, React only pushes the updates for the changed elements by checking the diff with last state and new state of the components. That provides amazing speed as browser doesn't need to construct more visual elements.

(4) With React Native we can develop native iOS and Android applications, so the knowledge gained from React is also transferrable for developing native mobile apps.

Using React.js can make huge impact on your project as well as it provides very good maintainability and development technique for better development.

How did I took advantage of React.js on this website? They are below here:

This is a sharer-only content.
Please share the page by the LinkedIn button below to reveal the content immediately.

I won't share, just show me the content
Disclaimer: Opinions expressed herein are my personal and do not represent my employer’s view.
This website uses cookies for security purposes and anonymous statistics tracking.