4.82 out of 5
19 reviews on Udemy

Creational Design Patterns in Modern C++

Learn creational design patterns in depth & their implementation in Modern C++
Umar Lone
216 students enrolled
English [Auto]
Understand what creational design patterns are
How creational design patterns solve object construction problems
Implement singleton correctly in C++ with thread-safety
Use factory method to encapsulate the construction process
Use object pool pattern to avoid repetitive construction & destruction of objects
Control construction process of an object through builder
Clone expensive objects through prototype
Use abstract factory to construct objects based on a context

Design Patterns are a way to solve common object oriented design problems. But understanding and learning design patterns is hard and takes time. Looking at a pattern is like looking at a solution without a problem, unless you’ve encountered the problem in the past.

This course aims to help you understand & implement Creational Design Patterns. Each pattern is explained with multiple examples and through modern C++. This helps you understand how the pattern can be implemented efficiently using language features. The examples do not involve cars, pizzas, ducks, coffee, etc. These topics are rarely used while building real-world software. Instead I provide real-world  examples written in Modern C++. These examples will compile & execute on any platform that supports a C++ compiler.

This is how the course teaches creational patterns.

  1. The intent, structure of the pattern is explained through UML class diagram.

  2. Basic implementation details of the pattern are explained.

  3. The pattern is implemented in a simple example.

  4. You get familiar with the overall implementation of the pattern.

  5. Another example is introduced that has design issues the pattern aims to resolve.

  6. We examine the issues and refactor the code by applying the design pattern step by step.

  7. Alternative scenarios & examples are explained along with differences between them. You also learn how to decide between different alternatives.

  8. I discuss the pattern in context of C++ and how to tweak it for performance, reusability & maximum flexibility.

  9. Finally, you’ll learn when to use the pattern and its pros & cons.

This is an intensive discussion that spans multiple lectures. At the end of each section, you’ll understand the pattern in depth and can apply it in your code or easily clear any design interview.

You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
4.8 out of 5
19 Ratings

Detailed Rating

Stars 5
Stars 4
Stars 3
Stars 2
Stars 1
30-Day Money-Back Guarantee


8 hours on-demand video
8 articles
Full lifetime access
Access on mobile and TV
Certificate of Completion