Things you need to know if you work with Angular
There are other choices out there but Angular is a great framework overall. There might be things that are a little odd but once you understand them you can build good software with Angular.
Unlike React, Angular is a fully fledged framework, not a rendering library.
This little guide is not meant to be a comprehensive tutorial or guide, but links to other resources where you can learn about critical topics in depth.
I’ll be editing this guide every now and then, when I find other things to add. If you know a good resource that should be link let me at vlad dot wtf know and I’ll add them.
In my view, to be a good Angular developer you need to understand a bunch of core things from the framework. Those are:
- Dependency injection. Understand the lifecycle of services, when they are instantiated, whether there will be one or more of them, when are instances of services thrown away, etc.
- Change detection. Why is the default change detection strategy generally a bad thing to use? Why immutable data has pretty much nothing to do with this (but it keeps popping up in blog posts)?
- The router.
- RxJS. Really dig into observables, subjects, and the gazillion utilities already written for them. They’re awesome. Don’t just
.toPromise()
(nothing wrong with it, but you’d be missing out).
Dependency injection
- Angular Dependency Injection guide, and the providers page.
- Introduction to services and dependency injection
Change detection
- https://angular.io/api/core/ChangeDetectorRef#usage-notes
- Using change detection hooks
- Defining custom change detection
The router
RxJS
Misc