Don’t Overcomplicate Your Angular App
Avoiding Common Overengineering Pitfalls in Angular Apps
During latest technical interviews that I conducted in EPAM, where I work as Lead software engineer, I found out, that candidates who gain experience with some popular tools, are prone to start blindly using it by default.
Despite of all cons, they recommend it to use in any cases, even if it significantly increases complexity of the app.
So, I decided to collect most common good technologies that use Angular developers, but probably should not.
Store pattern
And I will start with probably the most popular library for modern Angular application — NGRX. It has more than 600k weekly installs.
Store pattern became popular from React apps, since you were choosing between using Store or passing props through entire tree of elements.
I agree — Store is great! Just as NGRX, it’s so well integrated into Angular ecosystem using observables.
But it requires so much code to write for adding any state change. To add single button, you need to write an action, create a reducer, which will do something on this action dispatch, store property, subscribe to store changes, and probably event use effect.