Back to course list
- Level: Intermediate
- Duration: 04h 39m 28s
- Release date: 2021-10-27
- Author: Gerald Britton
- Provider: Pluralsight
Python Design Patterns Playbook
Description
Content
This course will teach you how to use proven object-oriented design patterns to significantly enhance the stability, testability, and maintainability of your Python development while decreasing your development time.
- Course Overview02m
- Course Overview02m
- Introduction11m
- Introducing Design Patterns02m
- Seeing Real-world Examples02m
- Understanding the Design Pattern Classifications02m
- Setting up Your Working Environment01m
- Defining and Using Interfaces in Python03m
- Module Summary01m
- Creational Patterns: Factory11m
- Introducing the Factory Pattern01m
- Motivating Example02m
- Using the Simple Factory Pattern04m
- Using the Full Factory Pattern03m
- Module Summary01m
- Creational Patterns: Abstract Factory07m
- Introducing the Abstract Factory Pattern01m
- Motivating Example02m
- Understanding the Abstract Factory Pattern01m
- Using the Abstract Factory Pattern in Python02m
- Reviewing the Pattern01m
- Creational Patterns: Builder10m
- Introducing the Builder Pattern01m
- Motivating Example05m
- Implementing the Builder Pattern03m
- Module Summary01m
- Creational Patterns: Prototype09m
- Introduction to the Prototype Pattern02m
- Understanding Shallow Cloning03m
- Implementing Deep Cloning02m
- Using a Prototype Manager01m
- Module Summary01m
- Creational Patterns: Singleton11m
- Introducing the Singleton Pattern01m
- Demo: Using an Intuitive Approach02m
- Understanding the Challenges and the Singleton Pattern Structure02m
- Demo: Implementing a Singleton Base Class03m
- Demo: Using a Metaclass01m
- Demo: Using the Alternative MonoState Implementation01m
- Module Summary01m
- Structural Patterns: Adapter12m
- Introducing the Adapter Pattern01m
- Demo: A Motivating Example03m
- Understanding the Object Adapter Pattern02m
- Demo: Implementing an Object Adapter02m
- Demo: Understanding and Implementing a Class Adapter02m
- Module Summary02m
- Structural Patterns: Bridge12m
- Introducing the Bridge Pattern01m
- Demo: Developing a Subscription System using a Naïve Implementation02m
- Demo: Adding Support for Discounts02m
- Understanding the Problems Found and Looking at the Bridge Pattern02m
- Demo: Refactoring Using the Bridge Pattern02m
- Demo: Adding Support for Special Offers02m
- Module Summary01m
- Structural Patterns: Composite12m
- Introducing the Composite Pattern02m
- Demo: A Motivating Example02m
- Understanding the Composite Pattern02m
- Demo: Refactoring Using the Composite Pattern04m
- Reviewing the Consequences of the Composite Pattern and Module Summary02m
- Structural Patterns: Decorator14m
- Introducing the Decorator Pattern01m
- Demo: Using Subclasses02m
- Demo: Using Properties02m
- Understanding the Decorator Pattern03m
- Demo: Implementing the Decorator Pattern03m
- Decorator Pattern vs. Python Decorators02m
- Module Summary01m
- Structural Patterns: Façade11m
- Introduction the Façade Pattern01m
- Demo: Naïve Implementation02m
- Façade UML03m
- Demo: Façade04m
- Module Summary01m
- Structural Patterns: Flyweight09m
- Introducing the Flyweight Pattern01m
- Demo: Trying a Naïve Implementation02m
- Exploring the Flyweight Pattern Structure02m
- Demo: Refactoring Using the Flyweight Pattern03m
- Module Summary01m
- Structural Patterns: Proxy14m
- Introducing the Proxy Pattern01m
- Looking at Proxy Types02m
- Demo: A Motivating Example03m
- Understanding the Proxy Pattern Structure02m
- Demo: Refactoring Using the Proxy Pattern04m
- Considering the Consequences of the Proxy Pattern02m
- Behavioral Patterns: Strategy11m
- Introducing the Strategy Pattern01m
- Demo: Implementing Order Shipping Using a Naïve Approach03m
- Visualizing the Strategy Pattern Structure02m
- Demo: Refactoring Using the Strategy Pattern02m
- Understanding the Advantages of the Strategy Pattern01m
- Demo: Using Variations01m
- Module Summary01m
- Behavioral Patterns: Command15m
- Introducing the Command Pattern01m
- Demo: A Motivating Example03m
- Understanding the Command Pattern02m
- Demo: Implementing the Command Pattern04m
- Demo: Implementing Undo04m
- Module Summary01m
- Behavioral Patterns: State12m
- Introducing the State Pattern01m
- Using a Shopping Cart as a Model01m
- Demo: Implementing the Shopping Cart Using a Naïve Approach03m
- Understanding the State Pattern01m
- Demo: Refactoring Using the State Pattern04m
- Consequences and Summary02m
- Behavioral Patterns: Observer12m
- Introducing the Observer Pattern01m
- Demo: Trying a Naïve Implementation02m
- Understanding the Observer Pattern02m
- Demo: Refactoring with the Observer Pattern04m
- Reviewing the Results and Exposing a Bug01m
- Demo: Implementing the Decorator Pattern Using Context Managers01m
- Module Summary01m
- Behavioral Patterns: Visitor12m
- Introducing the Visitor Pattern01m
- Demo: Adding a Pretty Print Option02m
- Understanding the Visitor Pattern02m
- Demo: Implementing the Visitor Pattern03m
- Demo: Refactoring Get Oldest02m
- Consequences and Summary02m
- Behavioral Patterns: Chain of Responsibility08m
- Introducing the Chain of Responsibility Pattern01m
- Demo: A Naïve Implementation02m
- Understanding the Chain of Responsibility Pattern01m
- Demo: Implementing the Chain of Responsibility Pattern02m
- Demo: Exploring a Different Implementation01m
- Module Summary01m
- Behavioral Patterns: Mediator11m
- Introducing the Mediator Pattern02m
- Demo: A Motivating Example03m
- Understanding the Mediator Pattern01m
- Demo: Refactoring Using the Mediator Pattern03m
- Learning the Consequences of Mediator01m
- Module Summary01m
- Behavioral Patterns: Memento08m
- Introducing the Memento Pattern02m
- Demo: Trying a Naïve Implementation of Game Save and Restore02m
- Understanding the Memento Pattern01m
- Demo: Refactoring Using the Memento Pattern02m
- Module Summary01m
- Behavioral Patterns: Null04m
- Introducing the Null Pattern01m
- Demo: A Motivating Example01m
- Demo: Refactoring Using the Null Pattern01m
- Module Summary01m
- Behavioral Patterns: Template09m
- Introducing the Template Pattern01m
- Demo: Trying a Naïve Implementation02m
- Understanding the Template Pattern01m
- Learning the Structure of the Template Pattern01m
- Demo: Refactoring Using the Template Pattern02m
- Module Summary02m
- Behavioral Patterns: Iterator14m
- Introducing the Iterator Pattern02m
- Demo: Iterating over Employees and Departments03m
- Understanding the Iterator Pattern03m
- Demo: Refactoring Using Iterator02m
- Demo: Iterating Using Python Generators02m
- Consequences and Summary02m
- Behavioral Patterns: Interpreter12m
- Introducing the Interpreter Pattern01m
- Reviewing Popular Domain Specific Languages01m
- Defining Formal Grammars Using Backus Normal Form02m
- Creating a DSL for Making Scrambled Eggs01m
- Understanding the Interpreter Pattern in UML01m
- Demo: Implementing the Scrambled Eggs DSL04m
- Consequences of the Iterator Pattern01m
- Module Summary01m
- Course Summary05m
- Reviewing This Course01m
- Credit Where Credit Is Due00m
- SOLID01m
- Don't Repeat Yourself01m
- Using Python Abstract Base Classes01m
- Other Design Patterns01m
- Thanks!00m
Random courses
- ISO 50001:2018 Energy Management System Awareness Course
- Investing For Beginners: How To Invest With Confidence
- Brand Leadership: Building Brand and Culture
- Mastering the Japanese Language v2022
- How to Easily Create a Microsoft PowerPoint Presentation
- Two Dimensional Kinematics-Projectile Motion
- Oracle Database 19c: Advanced SQL
- Microsoft Excel - Excel For All Students + Professionals
- Azure Arc Enabled Servers: Getting Started
- Investment analysis and portfolio management
Latest courses
- Ember.js: The Documentary
- GraphQL: The Documentary
- AWS Certified Solutions Architect - Professional (SAP-C01) Cert Prep: 1 Design for Organizational Complexity
- CCSP Cert Prep: 4 Cloud Application Security
- What Business Leaders Need to Know about Web3 (+ Metaverse)
- Building No-Code Apps with AppSheet: Implementation
- Automation Anywhere: The Big Picture
- Protective Technology with Apache Kafka
- Coding for Visual Learners: Learning JavaScript from Scratch
- StringBuilder Internals