Angular has a powerful dependency injection system. Learn how to use it so that your code complies with the Dependency Inversion Principle.