Open nelsonic opened 8 years ago
We have built ("single page") apps using Angular.js, Backbone.js, Ember.js, Meteor and React.js All of them are good frameworks/libraries; each have pros & cons.
The biggest con of all other framweorks/libraries is their size.
Angular.js is having to put ng-etc in the html. Ember.js is massive, we used it @GRPN because it was considered the "best" option back then. Backbone has excessive boilerplate but comparatively lightweight. {{ insert comparison of frameworks ? }}
The React Native App has 779 dependencies:
Any one of these can "break" our app if one of the module maintainers accidentally introduces a breaking change.
Elm does not have this problem.
If you read Twitter or Medium it seems like ALL the "Küel Kids" are jumping on the React.js Bandwagon ...
Mostly because Facebook are doing a great job of Marketing it which has made it Fashionable ...
Note: if this meme makes no sense to you, go watch Zoolander now!
Using React everywhere is a good plan if your objective is to work for this guy:
React does have a use case, but if you adopt it blindly because someone told you its "Küel" you run the risk of wasting time hunting for nails to hit with your new hammer and forgetting to solve the problem ...
React was built by Jordan Walke for Facebook's Ad Platform Management team because they needed a way of dynamically rendering thousands of DOM nodes on their ad-configuration single-page (desktop) app.
Are you building a desktop app that has thousands of nodes that need to be dynamically updated?
If you are building a Mobile-First web application that has thousands of DOM nodes you are probably over-complicating the UI ... Once your React project has been "Web Packed" the resulting "build" is huge which makes it slow on mobile devices
If you prefer not to think for yourself or on behalf of the people using the app you are building, close this page!
If like us, you prefer not to get sucked into blindly following fashion, take step back and objectively consider your options.