Before we dive into it, there's a few more things I should mention.
There are a couple more tools you want in your kit. They're not absolutely essential, but seeing as all the official docs and community code available online have made it a de facto standard, they kind of are.
The first one is ES6, which you should absolutely be using already.
The second is TypeScript, which Angular oficially endorses, and which is used instead of ES6 by the Angular CLI tool.
For the uninitiated, TypeScript is a superset of JS created by Microsoft, which used to have a lot of cool features that have since been made irrelevent by the advent of ES6. All except two: Type-checking -- the bread-and-butter of TS, and the ability to add interfaces.
I know what you're thinking: why does Google's Angular tell me to use Microsoft's TypeScript. I'm afraid I'm not sure. The answer must be that TypeScript is pretty awesome, which I think it is.
All of this may just be syntactic sugar; but in effect it has made JS as "classy" as Java. At least on paper.
That means the components we earlier talked about are actually modules/classes you can import, export and subclass. This is the single most important thing to keep in mind when building apps in Angular. Say goodbye to OOP. Say goodbye to prototypical inheritance. Say goodbye to traditional HTML and traditional JS.
I hate cliches, but this one seems fitting:
I'll detail these new tools over the next few pages. But feel free to jump to the next chapter if you already know about them or if you're getting antsy. You can always circle back.
One last thing. You'll want to ditch your old IDE for something modern like Atom or VS Code.