Python: Design Patterns
2h 31mIntermediate2025-03-03
Authors

Jungwoo Ryoo
Teaches IT, cybersecurity, and risk analysis at Penn State
Course details
Explore the world of Python design patterns and learn how to implement them to save time. Instructor Jungwoo Ryoo introduces 15 essential creational, structural, and behavioral patterns to help you solve common coding challenges, while introducing best practices that will keep your solutions consistent, complete, and correct. Learn how to use these patterns to structure your code more efficiently and effectively. Discover the power of reusable solutions shared by the programming community and enhance your Python coding skills. Learn through practical examples and challenge yourself with code challenges. By the end of this course, you'll be able to leverage design patterns to streamline your projects and solve common programming problems with ease. Whether you are a professional developer, a computer science student, or a coding enthusiast, mastering these patterns will significantly benefit your programming and problem-solving abilities.
Learning objectives
Design patterns
Creational patterns
Structural patterns
Behavioral patterns
Design patterns best practices
Learning objectives
Design patterns
Creational patterns
Structural patterns
Behavioral patterns
Design patterns best practices
Skills covered
Software Design PatternsPythonProgramming LanguagesOpen SourceSoftware DevelopmentOne-Off
Concepts
Introduction
- Explore design patterns
- What you should know
- CoderPad placeholder video
Understanding Design Patterns
- What is a design pattern
- Types of design patterns
- Understanding object-oriented programming
- Working with inheritance and polymorphism
- Understanding pattern context
- Working with pattern language
Creational Patterns
- Factory
- Factory example
- Solution - Factory
- Abstract Factory
- Abstract Factory example
- Singleton
- Singleton example
- Solution - Singleton
- Builder
- Builder example
- Prototype
- Prototype example
Structural Patterns
- Decorator
- Decorator example
- Solution - Decorator
- Proxy
- Proxy example
- Adapter
- Adapter example
- Composite
- Composite example
- Solution - Composite
- Bridge
- Bridge example
Behavioral Patterns
- Observer
- Observer example
- Solution - Observer
- Visitor
- Visitor Example
- Iterator
- Iterator example
- Strategy
- Strategy Example
- Solution - Strategy
- Chain of Responsibility
- Chain of Responsibility example
Design Best Practices
- Consistency
- Programmer's mindset
Conclusion
- Next steps