Simple play icon Course

Design Patterns in C++ 20: Creational

by Zachary Bennett

Creational design patterns lie at the heart of object-oriented programming. This course will teach you how to leverage the creational design patterns and SOLID principles in C++ in order to create well-designed systems.

What you'll learn

Object-oriented programming in C++ can be overly complex. In this course, Design Patterns in C++: Creational, you’ll learn to use the primary creational design patterns as well as SOLID principles to break down some of this complexity. First, you’ll explore the SOLID design principles and see how they can help you work with object-oriented programming more efficiently. Next, you’ll discover some of the basic creational design patterns including the singleton, builder, and prototype patterns. Finally, you’ll learn how to leverage some of the advanced creational design patterns including factory method, abstract factory, and dependency injection. When you’re finished with this course, you’ll have the skills and knowledge of creational design patterns needed to better design software systems with C++.

About the author

Zach is currently a Lead Software Developer at OpalSoft where he uses tools such as Scala, TypeScript, Python, Docker, Node, and Angular. Zach has a passion for GIS programming along with open-source software. You can view some of his work on GitHub ( and Stack Overflow (

Ready to upskill? Get started