by ericthegoodking on 1/28/15, 7:26 PM with 14 comments
by slashnull on 1/29/15, 12:43 AM
1) if I understood correctly, the design of Angular has some inherent, and rather large, performance hits.
2) Google isn't dogfooding Angular save for one project. Facebook seem pretty serious about doing all new developement in React.
3) the specific kind of developement they're doing is similar to the one I have to do right now, viz. taking an established mostly static page and adding bits of highly interactive and dynamic behavior here and there. Google used Angular to reimplement the app from scratch. I can't afford that.
4) Angular, at what will probably the top of its popularity right now, just broke all interfaces and syntax and everything during the passage to 2.0, for reasons that were never fully explained (to me at least). Facebook won't be able to do that without breaking the proportionally large investment they had so far with React.js and incurring significant costs, which is nice and stable and comfortable. If the benefit/cost ratio of React 2.0 (or 1.0, I guess) is acceptable for Facebook, then it will probably be acceptable for me, too.
5) React interacts nicely with their Flow typechecker, which I think is, uh, the safest vector, right now, to foster the adoption of algebraic typing in the mainstream of programming. I won't typecheck my JS before the summer, probably, but still, this is philosophically fun.
by delluminatus on 1/28/15, 8:01 PM
IMO, you should use Angular, unless you:
1. Need good performance with over 1000 data bindings
2. Are making a literal SPA (i.e. don't really need URL routing or multiple controllers)
3. Plan to build a long-term rock-solid application (like a backbone for an enterprise)
4. Want to understand exactly what is happening in your app.
by ptasci67 on 1/28/15, 10:30 PM
Personally, when I switched to React, I never turned back. Angular gives you more out of the box but I personally hated that box. I really jive with the React way of doing things and mixins allow you to easily add more functionality like routing, etc.
by smt88 on 1/28/15, 8:07 PM
by raorao on 1/28/15, 7:45 PM
Is your site made up of many different views that don't change much once loaded? Then angular would be a fine tool for the problem. You would likely move much faster initially, since Angular handles a lot of problems with data binding and routing for you.
And finally, are you sure you need either of these frameworks? If you want your front end to consume JSON but it isn't particularly dynamic, something like backbone will probably be good enough. Hell, server-rendered templates do the job in a lot of cases. No reason to solve a problem that doesn't exist.
by tptacek on 1/29/15, 10:10 PM
by gravedave on 1/30/15, 5:44 PM
I'd probably go for Backbone, Underscore, Zepto and/or Bootstrap.