I was going crazy with all the files you need to have for a small project.
It's like all the horrible sides of OOP and abstraction, but on steroids.
I was going crazy with all the files you need to have for a small project.
It's like all the horrible sides of OOP and abstraction, but on steroids.
You get ORM, a web framework, dependency injection, messaging, and a whole lot more just by including the modules you want. You can learn the basics in an afternoon of reading documentation. The major IDEs have very good plugins.
A legacy Spring app can be absolute hell, though.
That said, Angular (1.x) was the worst professional experience of my life. It was the only technology I absolutely could not learn enough to get comfortable with, despite working with it daily for over 2 years. Non-stop banging my head against my desk. That job caused real depression, burnout, health problems.
But you can get all that stuff without Spring, too. And Spring adds another layer in between you and the ORM, the web framework and the messaging framework - a layer that's heavily reflection-based and makes a ton of undocumented assumptions about how things are set up and throws cryptic error messages when those assumptions are violated.
Like any opinionated framework, it's going to make assumptions that can cause headaches, but it's mature enough that most issues I run into are a Stack Overflow away.
> It's like all the horrible sides of OOP and abstraction, but on steroids.
Can you go more into detail?
At first glance it seems "complete", but once you start building there's just so many insane edge cases that don't work well or have bugs. I also think that "integrating" RxJS was a mistake, while I get it and it's nice, it's imho too low level of an abstraction if you have many people that don't necessarily want to learn all the details (easy to shoot yourself in the foot with it), too different from anything else in JS, and too poorly integrated into angular.
And also the verbosity of everything.. was too much for me.