Design patterns can be very useful in Python. But how do you know which patterns to choose and the right and wrong ways to implement them? This advanced tutorial offers many practical examples of the good the bad and the beautiful methods for solving problems in Python with design patterns. You'll also learn some of the theory that underpins them.

This video covers both "classical" patterns from Design Patterns: Elements of Reusable Object-Oriented Software (Addison-Wesley Professional) and variations used specifically for Python such as Borg vs. Singleton Template Method and Dependency Injection.