In this 16-video course, learners will explore the details and implementation of five commonly used creational design patterns: Singleton, Factory, Abstract Factory, Builder, and Object Pool. Key concepts covered here include how the Singleton pattern works and when to use it; how to write code for a simple implementation of the Singleton pattern; and how to implement the Singleton pattern by using a more Pythonic style and global objects in Python. Next, learn how the Factory and Abstract Factory patterns work; how to iteratively improve the design of code using refactoring; and how to design and implement the serializer with the Factory pattern. Continue by learning how to apply the Abstract Factory pattern to create a family of objects; how the Builder pattern works and how to implement a simple design for the Builder pattern; and how the Object Pool pattern works and how to implement the Object Pool pattern to limit the number of instances. Finally, learn how to improve the Object Pool pattern by making the object pool a singleton.