Python: Design Patterns

Python: Design Patterns

2h 31mIntermediate2025-03-03

Authors

Jungwoo Ryoo

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

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
80,000 Toman