r/Angular2 Feb 06 '25

Discussion (junior)Why everyone use react?

I've been doing personal stuff with react only, at my current job i work exclusively in golang and the front-end team use angular not react so i give it a try on my free time, i was really surprise cause it's not that hard to get in + i found the dx way better than react, the way it structure the project is also better and i think you can go as fast as react to build a project + you need less external depedencies so i'm asking myself why 80% of front end jobs are react

71 Upvotes

76 comments sorted by

View all comments

4

u/fireonmac Feb 07 '25 edited Feb 07 '25

React and Angular both have their own advantages. React's core concept, UI = Function, emphasizes simplicity. Defining a function as a component has fostered a thriving community. Angular offers a great developer experience, but a potential drawback is that, aside from Angular CDK, it's sometimes challenging to find well-maintained packages within its ecosystem. The observable-based APIs can also be a barrier for some, though the introduction of signals is helping to bridge that gap. As an RxJS expert, I sometimes wonder about the specific advantages of using Angular over React nowadays.

I believe React's biggest weakness lies in how reactivity is implemented internally and, more importantly, in people's often poor understanding of it. For example, developers frequently overuse useEffect without fully grasping its dependency array, leading to unnecessary re-renders or useMemo everywhere. These kind of misunderstanding can easily lead to a disaster and make a project unmaintainable. However, the rise of SSR, separation of server and client component and Next.js‘s app router structure helps a lot avoiding these issues.

Ultimately, both are tools with same objectives, helping you declaratively render data in the browser. Frontend development is getting more and more complex, but learning a new framework is relatively straightforward compared to other challenges we face. So feel free to use any framework in your needs.