3 ms·
As a startup who's built all of its UI on AngularJS, does introducing React/Om into the stack make sense? We have a B2B product where the users deal with a lot
by saurabhnanda 12y ago
As a startup who's built all of its UI on AngularJS, does introducing React/Om into the stack make sense? We have a B2B product where the users deal with a lot of CRUD forms and dashboards.
React looks interesting, but only if it gives significant advantages (time-to-market, maintainability, etc) vis-a-vis AngularJS in managing a large code-base.
Any first hand reviews?
- danabramov 12y agoWe used Angular at Stampsy and it was a pain to learn and debug. React is awesome because it encourages very modular components, has very small API surface (you can go far with knowing 5 API methods, compare this to Angular insanity) and great out-of-the-box performance (which is possible to boost 5x if you use performance hooks like `shouldComponentUpdate`). React gets you very close to browser limits in terms of perf, while staying very maintainable. Moreover, it doesn't impose any kind of structure on your projects, and you can begin using it one component at a time (even inside Angular). (I'm not affiliated, just a very happy user.)
- saurabhnanda 12y agoWhy do you say AngularJS was hard to debug? Also any insights around modularity - AngularJS directives vs ReactJS components? I hear you about the API surface. Currentlu AngularJS has too many weird/new concepts.
- danabramov 12y agoWhy I prefer React over Angular: 1. Two-way bindings complicate things because there is no single source of truth. (See http://vimeo.com/92687646 http://vimeo.com/92687646 at 30:00) 2. Template/directive separation is superficial, in fact these are single concern and should be together. 3. Separation between `props` and `state`, as well as documenting `props` via `propTypes` encourages very natural modularity.
- danabramov 12y agoWe used Angular at Stampsy and it was a pain to learn and debug. React is awesome because it encourages very modular components, has very small API surface (you can go far with knowing 5 API methods, compare this to Angular insanity) and great out-of-the-box performance (which is possible to boost 5x if you use performance hooks like `shouldComponentUpdate`). React gets you very close to browser limits in terms of perf, while staying very maintainable. Moreover, it doesn't impose any kind of structure on your projects, and you can begin using it one component at a time (even inside Angular). (I'm not affiliated, just a very happy user.)
- dustingetz 12y agoYES - I've built two enterprise app frontends (CRUD forms and dashboards) in react since react came out. Now that I know what I'm doing and have my tools built out, I am contracting and hitting ridiculously tight schedules that I would never have been able to hit without the level of abstraction react enables. It helps that a react codebase is massively smaller than a comparable OOP-style codebase (I've used Backbone, Knockoutjs, and ExtJS in comparable apps)
- porker 12y agoAre there any helpers/libraries you use when building CRUD forms? I haven't seen one for React yet - or TBH a well functioning one in any language I use - and it's a pain point I would like to solve.
- dustingetz 12y agohttps://github.com/wingspan/wingspan-forms https://github.com/wingspan/wingspan-forms https://github.com/dustingetz/react-cursor https://github.com/dustingetz/react-cursor http://www.dustingetz.com/2014/02/18/react-dynamic-forms.html http://www.dustingetz.com/2014/02/18/react-dynamic-forms.htm...
- porker 12y agoFab thank you! I look forward to exploring these... any system that makes CRUD less painful is a system I want :)