Simple play icon Course

Creating Object-oriented TypeScript Code

by Dan Wahlin

This course dives into object-oriented TypeScript code, teaching you about object-oriented principles and how they can be applied to your TypeScript applications. Learn about objects, classes, inheritance, abstract classes, interfaces, and more.

What you'll learn

TypeScript supports many different ways to define and create objects which can be confusing especially when you're new to the language. Should you use a constructor function, Object.create(), classes, a coding pattern, or some other technique when creating objects? In this course, Creating Object-oriented TypeScript Code, you'll learn different ways to create objects while focusing on object-oriented programming (OOP) techniques that can be used to maximize reuse and enhance productivity. First, you'll explore the core principles of object-oriented programming, such as encapsulation, polymorphism, inheritance, and abstraction, and see how they can be applied and used. Next, you'll discover how to define and instantiate classes in TypeScript, understand what members can be added to a class and the role they play. Then, you'll delve into how inheritance can be used to promote reuse, and what an abstract class is and why you'd use one. Finally, you'll learn about the role of interfaces and how they can be used to create code contracts that drive consistency across a set of objects and enable polymorphic behavior. When you're finished with this course, you'll have the skills and knowledge needed to build robust object-oriented applications using the TypeScript language and understand when and why to apply object-oriented programming principles.

About the author

Dan Wahlin founded Wahlin Consulting, which provides consulting and training services on JavaScript, Angular, Node.js, C#, ASP.NET MVC, Web API, Docker, and Kubernetes. He is a Google GDE (and former Microsoft MVP and Regional Director), Docker Captain, and speaks at conferences and user groups around the world. Dan is active on Twitter (@DanWahlin), blogs at, and adds a lot of code to his Github repos at

Ready to upskill? Get started