Chapter 1, Getting Started, introduces the Angular 4 framework and its new features, how
Angular 4 is better and more powerful than its predecessor Angular 1, development
environment setup for Angular 4 applications. Also, it provides a quick insight
into TypeScript and its features, how to write a basic Angular 4 app, and understanding its
Chapter 2, Basics of Components, walks through the basics of Angular 4 components,
starting with display data using interpolation syntax, property binding, attribute binding,
working with DOM events, and two-way data binding. It also introduces structural
directives for conditionally displaying data and attribute directives for conditional styling.
Chapter 3, Components, Services, and Dependency Injection, walks through how to develop
Angular 4 applications using multiple components, communicating between components,
sharing the data between these components using services and injecting services using
dependency injection, as well as how dependency injection works.
Chapter 4, Working with Observables, focuses on reactive programming, Observables, RxJS,
how Angular 4 implements Observables using RxJS, and using Observables and RxJS
operators in Angular 4 applications.
Chapter 5, Handling Forms, introduces how to create different types of forms in Angular 4
applications to accept user input and validate it using template-driven forms, reactive
forms, and validation directives.
Chapter 6, Building a Book Store Application, walks through how to structure tiny to a
complex application using Angular 4 modules, build various types of user interfaces in a
Book Store application, navigate between components using routing, interact with the
server using the HTTP service.
Chapter 7, Testing, introduces how to write unit tests using Jasmine and Angular Test
Utilities for various parts of Angular 4 applications.
Chapter 8, Angular Material, walks through how to build a single compelling UI, which
flows across desktops, tablets, and mobile devices, using material design, and learning how
to customize material design as per customer branding.