Design Patterns in TypeScript

Design Patterns in TypeScript

Write cleaner code and enhance your development skills with TypeScript design patterns

What you’ll learn

  • Identify and avoid violations of the SOLID Principles
  • Create single instances of classes throughout your apps with the Singleton pattern
  • Use factories to get instances and object pools
  • Understand Dependency Injection and work with its benefits
  • Use InversifyJS and learn about dependency scope
  • Extend objects with the Decorator pattern
  • Convert interfaces using the Adapter and Facade patterns
  • Choose implementations on runtime using the Strategy pattern
  • Use the Observer pattern to notify your app’s components about changes
  • Store application state using the State pattern


  • No prior knowledge of design patterns is required for this course.


In programming, there are several problems that occur frequently. To solve these problems, there are various repeatable solutions; these are known as design patterns. Design patterns are a great way to improve the efficiency of your programs and improve your productivity; you’ll learn them all in this course. This course is a collection of the most important patterns you need to improve application performance and productivity.

This course starts by exploring SOLID principles to write clean code. Then you will create new objects and instance of classes with creational design Patterns. Next, you will utilize dependency injection with InversifyJS to create testable, maintainable, and extensible code.

Moving on, you will explore structural design patterns to better express the relationships between different application entities. Lastly, you will investigate behavioral patterns to add flow to your applications and add levels of communication between your entities.

About the Author

Dimitris Loukas is a software engineer currently working with Angular, Node .js, and Docker for a referral marketing startup. He is also developing trading software applications using C# and Aurelia. He has worked for two startups in the past, is active in the open source community, and loves taking up small side-projects. He has developed microservices using C# and Node .js and has also mastered Angular, Aurelia, and Vue .js.. He was an early adopter of .NET Core and is fascinated by modern JavaScript and where the web is going.

Who this course is for:

  • This video is for TypeScript/JavaScript developers with basic TypeScript knowledge who want to build and maintain complex applications using design patterns.

Leave a Reply

Your email address will not be published. Required fields are marked *

%d bloggers like this: