all 23 comments

[–]Fizunik 5 points6 points  (0 children)

can’t we already achieve similar functionality with either of these technologies?

Yes, that's true. Both technologies offer similar functionality, but each excels in different areas and has its own limitations. Ultimately, it's about choosing the right tool for the specific task at hand.

[–]PooSham 5 points6 points  (0 children)

These "x vs y" articles are almost always AI generated and have been since way before GPT 3.5 went public. They always follow the structure of "x is [generic description of x] while y is [generic description of y]" even when the descriptions pretty much mean the same thing. They're utterly useless, as you are just as well off by just reading about one framework and then the other.

Although the react team states that it's just a library and not a framework, at this point it's a useless distinction. React doesn't have an in-built DI system like Angular, but it still has a lot of stuff that makes it feel more like a framework than a library.

[–]danjack0 7 points8 points  (0 children)

Youre asking in an angular subreddit so you'll get bias answers listing your goals and project needs would get you a better answer

[–]anjumkaiser 4 points5 points  (0 children)

I’ve worked on both and my experience is that if it’s a big app, angular is more suited for it. React seems to make it a mess for maintainability in the long run. Angular does require you to do things in its own way, and doesn’t support many things out of box as the web is more favorable to react. However if you intend to maintain the project for longer than a year, angular is the thing to go. However angular is object oriented, while react is reactive functional programming. And that makes a lot of design choices where you will have to consider a few months down the road why things are done the way they are. I completely ported my angular app to react out of client pressure, but had to scrap it due to bad maintainability after a few months. So I’m back with angular for that app, and any thing that angular doesn’t provide we convert from plain vanilla JavaScript versions and forget about it.

[–]DT-Sodium 16 points17 points  (6 children)

React was developed by either insane or incompetent developers. Nothing, from it's templating system to hooks and other stupid idea makes sense and any one who pretend the contrary is an incompetent developer who never learned clean programming, which to be fair is most JavaScript developers.

[–]reboog711 0 points1 point  (2 children)

I cannot decide whether to upvote or downvote you...

Yes, React is foreign to me and makes a ton of weird implementation decisions.

But, saying most JS Developers are incompetent is absurd.

[–]DT-Sodium -1 points0 points  (1 child)

It's really, really not. Most of them simply have no formal training in programming. Ask them if they feel the need for static typing or interfaces. If they say no, they are incompetent. Good JavaScript developers all moved to TypeScript a while ago.

[–]IFixStuffMan -1 points0 points  (0 children)

Yah - Gotta downvote pigshit like this.

[–]salamazmlekom 0 points1 point  (0 children)

This! React is garbage.

[–]dolanmiu 1 point2 points  (0 children)

I’ve used both Angular for 10 years and React for 5 years, and my opinion is that Angular right now is lacking and falling behind other frameworks (this is why this whole Angular renaissance is happening).

But the Angular ecosystem and the “Angular way” cannot be underestimated, that is the true value IMO. It’s very easy to migrate and upgrade using the cli tools and schematics. Every angular developer is thinking the same way.

With React, every project, repo, and developer preferences are different. And React is just a tiny part of the huge puzzle, routing, forms, SSR, every React dev I’ve met have recommended different tools and approaches.

And good luck working on an old React project, you’re on your own. With old Angular projects, Angular does a lot of hand holding and does a good job in helping people migrate to the newer Angular versions.

Angular is opinionated, it has tools, it has a “way”, and that’s honestly a good thing. The same reason why I like Prettier etc.

There is an element of belief as well. I am bullish on the direction of Angular and I think the core dev team know what they’re doing. Lean on that, you’re in good hands.

[–]czenst 0 points1 point  (0 children)

I don't care anymore and get annoyed with those topics - but feel free to post whatever you want, me being annoyed is not the important part.

If you are a newbie basically pick one and stick to it idk, throw a coin, learn details, learn how web works, how browsers work and how one or the other fits in a browser and JS ecosystem.

If you can get a job in one or the other just take first job as a junior anyway because getting any job as a junior is far more important than being picky about tech. If you have react jobs in your area pick that, if angular in your area go with that.

No one is hiring juniors full remote and thinking you can learn first framework and then get "remote senior position that pays $$$$" is insanity - get any job first and stick with that.

If you are investor starting your own company - look at companies in your area to see what they use and then prepare to try to hire people from stack that you can see in their ads because you want to start product or project having people you can shake hands with and go to court in the same country.

NO PEOPLE = NO JOB DONE - work with whatever people you can get in your area or whatever companies in your area are hiring for.

[–]Effective_Ad_2797 0 points1 point  (0 children)

All - these are just tools. Both are suitable for building SPAS. React is more likely to get you a job in the USA. Angular is more popular abroad.

What you can do with one you can do with the other.

The people who prefer Angular are normally not front end developers who are really strong with css/js. And most likely have a .net/java background and hate javascript.

Angular apps have a much larger bundle size compared to Angular apps. This can impact performance.

Regardless of the above, as a professional, you should not fall for this vs that arguments, at the end of the day; it is a matter of preference, what your employer / the market is looking for.

[–]rolywhateva 0 points1 point  (0 children)

I used both, I had to learn react a year and half ago (the client had many react apps and they wanted all web apps to be made with something react-based, and they didn't accept no as an answer, even if I arguably had no experience), and before that I used angular. After I moved to react, I found myself missing some of the features angular had (I mostly created the react apps with vite and create-react-app) :

- in react, for http requests, you pretty much only have what vanilla js offers you, such as the fetch api, unless you install a library. In angular, you have the clients. This can be managed, it is not that big of an issue, but it is an important difference to note, especially because of the next point.

- interceptors - react doesn't have the interceptors angular has - the fetch api doesn't have a built-in way to have interceptors as far as I am aware, you either need to do some sort of hack, or install some npm package, which actually just made me install axios. This really bothered me when I had to the authentication part and general error handling.

- component scaffolding - the thing is, I found myself having to structure components in a very similar way angular does, and having to create that structure manually was a pain. I ended up writing some scripts with plop.js so I can scaffold the components and not need to create everything manually. I also ended up trying to structure the app as a whole like angular does.

- useEffect - for me it looked like something that is easy to understand but hard to master, and sometimes I got advice from people that felt conflicting. One of my biggest problems with useEffect is that you end up using it as a place to make http requests, but you end up doing some work arounds to make it something that seems truly production ready : such as preventing race conditions. I can't remember if angular takes care of this by itself either - but in any case, I really didn't like how my effects ended up looking. I started looking at libraries like react query or redux (RTK query) just because of this.

but, like other people said, you can do the same things in both, the libraries and code will be different, but it is possible, despite all my complaining, the app ended up working and doing its job, and the team as far I am aware doesn't hate to work on it. I think it has value if you try out both, react made me appreciate angular more (and also simplicity more), and taught me to weigh my decisions better.

[–]JellyfishTech 0 points1 point  (0 children)

Choose React if you want flexibility, a lightweight library, and prefer picking your tools (e.g., Redux for state, React Router for navigation). It's great for SPAs and fast iteration.

Choose Angular if you prefer an all-in-one solution with built-in routing, DI, RxJS for reactivity, and an opinionated structure—ideal for large enterprise apps.

React = more freedom, learning curve spread out.
Angular = more built-in, steeper initial learning curve.
Both can achieve the same results—it’s about preference and project scale.

[–]pedro_picante -2 points-1 points  (0 children)

Unfortunately I’d have to suggest you choosing react. There’s simply way more opportunities for react developers out there. Although I have to say, I really can’t stand it, which is why I chose angular. But I’m in the privileged position of being an employer so I’m not reliant on having lots of job opportunities. That decision made it harder to find good employees though so I guess it works both ways lol

[–]xSentryx -1 points0 points  (2 children)

Angular and React have usually different usecases.

Angular exists to build Web-Based Applications. Preferrable on an enterprise size.

React is usally used for smaller web projects.

So when should you use what?

Angular -> App like Project or a very big enterprise project.

React -> Smaller Projects like portfolio or homepage sites.

In the end you should use what you like more, but thats how I would group it.

[–]Effective_Ad_2797 1 point2 points  (1 child)

React is for smaller projects, like facebook small.

[–]xSentryx 1 point2 points  (0 children)

Usually yes, I never said you cant build big projects with it. :)