Object-Oriented Programming with TypeScript

In the previous chapter, we learned how to work with functions and how to take advantage of some asynchronous programming APIs. In this chapter, we are going to learn how to implement TypeScript applications using the object-oriented programming (OOP) paradigm. We are going to learn about the following topics:

  • Classes
  • Association, aggregation, and composition
  • Inheritance
  • Mixins
  • Generic classes
  • Generic constraints
  • Interfaces
  • The SOLID principles