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
Limited time! Save 40% on 3 months of Coursera Plus and full access to thousands of courses.

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
Details to know

Add to your LinkedIn profile
March 2026
11 assignments
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.

Chaitanya A.

Open new doors with Coursera Plus
Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription
Advance your career with an online degree
Earn a degree from world-class universities - 100% online
Join over 3,400 global companies that choose Coursera for Business
Upskill your employees to excel in the digital economy
Frequently asked questions
Yes, you can preview the first video and view the syllabus before you enroll. You must purchase the course to access content not included in the preview.
If you decide to enroll in the course before the session start date, you will have access to all of the lecture videos and readings for the course. You’ll be able to submit assignments once the session starts.
Once you enroll and your session begins, you will have access to all videos and other resources, including reading items and the course discussion forum. You’ll be able to view and submit practice assessments, and complete required graded assignments to earn a grade and a Course Certificate.
More questions
Financial aid available,

