Built and tested by Facebook, so let’s be honest, if it’s good enough for Facebook and their millions of users, it’s good enough for just about everyone. Similarly, Google has developed Angular.js, however, they don’t use it in their flagship apps. The new version of Angular.js (version 2) is not a standard update, it’s a complete rewriting of the entire framework, meaning that almost all applications built using Angular.js version 1 will have to be re-written from scratch, making developers very unhappy and frustrated and looking for better solutions. Facebook using React.js in their web/iOS/Android apps, making it highly unlikely that they will create such hardcore changes and will keep their community of developers happier in the long run.
With React.js, the learning curve is easy and developers can become proficient in no time. Also, the development process has been shortened. In React.js, components are built a lot like Legos. Each component holds everything it needs in one place. It truly increases agility and development speed with the fact that once a brick is built, it can be used anywhere and acts the same way system-wide. Furthermore, React has some of the best performance. When certain parts of the app need to be re-rendered, React does a ‘smart diff’ and only re-renders things that have changed. All this and more helps pushing out great production level apps and features in no time.
Until now, developers had two ways of developing apps for Android/iOS: Either write in the native language (Java/Objective C) or add a webview to your app (basically rendering a browser in your app). Developing in Java/Objective C is a long process, which takes a lot of time, resources, manpower, knowledge, etc. Writing in the webview takes a dive in performance, has problems leveraging the native components and difficulties accessing native APIs like camera/GPS/gyroscope/etc. Enter React Native. With React Native, developers can write with React.js, but it calls the relevant native components, providing all of the benefits of React but for mobile devices. Essentially, an entire engineering team now has the ability to be mobile developers. Just as an example, Facebook originally planned to build their iOS Ad Manager application in 18 months using Objective C, they ended up completing it in five months using React Native. And, it only took three additional months to port it to Android.
If the technical side of React doesn’t show you just how much of a game changer this is to developer, the ever growing community is constantly in development and sharing mode, with many new components being built and put straight into projects.
About Andrew Reinhardt
Read more articles by Andrew