This chapter exposed a lot of interesting concepts in data abstraction, while utilizing the power of dependency injection. You learned how components interact with each other using a service as a hub, how data and logic are abstracted from a component to services, and how reusable utility code is handled in a service to keep your application clean. In the next chapter, you'll learn a practical approach to forms in Angular and DOM events.

Get TypeScript 2.x for Angular Developers now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.