Mastering Python design patterns is an essential skill for any developer focused on building scalable and maintainable software. This course dives deep into classic and modern design patterns, offering developers the knowledge to enhance the structure and functionality of Python applications. Understanding design patterns helps in crafting efficient, flexible, and reusable code, a must-have skill in today’s software development landscape.

Mastering Python Design Patterns

Mastering Python Design Patterns

Instructor: Packt - Course Instructors
Access provided by Chitkara University Enterprise
Recommended experience
What you'll learn
Apply Gang of Four patterns effectively in Python
Explore architectural and concurrency patterns for optimized code
Develop modular, decoupled systems with efficient dependency management
Skills you'll gain
Tools you'll learn
Details to know

Add to your LinkedIn profile
11 assignments
March 2026
See how employees at top companies are mastering in-demand skills

There are 11 modules in this course
In this section, we explore core design principles including encapsulation, composition, interfaces, and loose coupling to build maintainable and scalable software in Python.
What's included
2 videos2 readings1 assignment
In this section, we explore the SOLID principles, including SRP, OCP, LSP, ISP, and DIP, focusing on their application in Python to improve code maintainability and flexibility.
What's included
1 video3 readings1 assignment
In this section, we explore creational design patterns in Python, focusing on factory, singleton, and prototype patterns to enhance object creation and management in software development.
What's included
1 video6 readings1 assignment
In this section, we explore structural design patterns to enhance code organization and functionality. Key concepts include adapter, decorator, and bridge patterns for flexible and maintainable software solutions.
What's included
1 video10 readings1 assignment
In this section, we explore behavioral design patterns to enhance software interaction and flexibility. Key concepts include Chain of Responsibility, Command, and Observer patterns for improved system design.
What's included
1 video12 readings1 assignment
In this section, we will learn architectural patterns like MVC, microservices, and event sourcing for scalable system design.
What's included
1 video4 readings1 assignment
In this section, we explore concurrency and asynchronous patterns, including thread pools, worker models, and futures, to enhance application performance and responsiveness in real-world systems.
What's included
1 video5 readings1 assignment
In this section, we explore performance patterns like Cache-Aside, Memoization, and Lazy Loading to optimize application speed, memory usage, and resource efficiency in real-world systems.
What's included
1 video3 readings1 assignment
In this section, we explore throttling, retry, and circuit breaker patterns to manage resource usage, handle failures, and improve system stability in distributed environments.
What's included
1 video2 readings1 assignment
In this section, we examine Mock Object and Dependency Injection patterns to improve test reliability, code reusability, and maintainability in software development.
What's included
1 video3 readings1 assignment
In this section, we examine Python anti-patterns, focusing on code style, correctness, maintainability, and performance to improve code quality and long-term project sustainability.
What's included
1 video4 readings1 assignment
Instructor

Offered by
Why people choose Coursera for their career

Felipe M.

Jennifer J.

Larry W.






