The Power of ReactJS in Web Applications
Kieran Desmond
Kieran Desmond
Chief Technology Officer | Tech Entrepreneur | Ex Drive Inc. Successful Exit | Masters in Business Information Systems
As ReactJS has matured, I've been slowly weening myself from AngularJS and #Angular - more and more to ReactJS and React Native. That is for a few reasons:
The Advantage of React
- It's so easy to learn & theres plenty of courses - I'm about to complete a certification and the process has been dare I say it - fun!
- Reusable Components - Its so easy, to create and re-use components in React among your projects ( I'm building a collection here: https://github.com/kierandesmond/ ).
- Performance - by using a virtual #DOM instead of having to reload the page - you can save a lotttt of time!
- Visual Studio Code Tools - there are so many tools and shortcuts in VS Code, that your efficiency can go through the roof.
- Backend Agnostic - With React, you can have your backend of choice, e.g. #Node or #PHP which gives great flexibility.
There are many more benefits - easy testability, a rich JS Library. The list goes on.
Disadvantages of ReactJS
- High pace of change - sometimes, you come across plugins that are only a year or two old. In some cases I've had to fork libraries to update and remove old hooks & code to update. Such is the pace of progress!
- Average Documentation - the documentation of React could be better - this is probably due to rapid change.
- View-orientedness
- Mixing of JS and HTML using JSX files - some prefer to keep the separate
- Reacts large library size.
Overall - my experience of React and React Native has been quite positive. My preference now will be #ReactJS over #Angular
Co-founder & CTO at Ringotel
4 年Thanks for sharing this, Kieran! I've been using React for some time but quite recently moved to Angular. What I do like in Angular most the TypeScript (helps me do less debugging), standard (almost) HTML and the API feels more solid (I find articles from Angular 2 works for Angular 9 as well). Also, it provides many things out-of-the-box and helps build more structural applications which are good when you need to speed up the development. Among the cons, I found that the Dependency Injection needs some time to fully comprehend and working with forms (both Reactive and Template-driven) is not too obvious, I like more how it's implemented in React. I'm still on the learning curve so these might change!