C++ Design Patterns: Behavioral
Offered By: LinkedIn Learning
Course Description
Overview
Learn important design patterns in C++ that you can use to make well-informed decisions about how to organize application code.
Syllabus
Introduction
- Behavioral patterns improve software design
- What you should know
- What are design patterns?
- The Chain of Responsibility pattern
- Implementing the Chain of Responsibility pattern
- Create Chain of Responsibility handlers
- The Command pattern
- Implementing the Command pattern
- Increasing code reuse with commands
- The Mediator pattern
- Implementing the Mediator pattern
- Using the Mediator from inside other classes
- The Observer pattern
- Creating publishers
- Creating subscribers
- Project: Create a group-chat program
- Challenge: Apply the Command pattern
- Solution: Apply the Command pattern
- The Interpreter pattern
- Implementing the Interpreter pattern
- Applying the Interpreter pattern
- The State pattern
- Implementing the State pattern
- Applying the State pattern
- The Strategy pattern
- Creating strategies
- Rewriting classes to use strategies
- The Template Method pattern
- Creating template methods
- Modifying templates using subclasses
- The Visitor pattern
- Implementing visitors
- Allowing classes to accept visitors
- Project: Create a greeting-card generator program
- Challenge: Modifying the card generator
- Solution: Modifying the card generator
- The Iterator pattern
- Implementing the Iterator pattern
- Using iterators
- The Memento pattern
- Creating a Memento class
- Using Memento classes
- The Null Object pattern
- Creating Null Object classes
- Setting null objects as the default
- Project: Create an instant replay program
- Challenge: Apply the Null Object pattern
- Solution: Apply the Null Object pattern
- Next steps
Taught by
Shaun Wassell
Related Courses
Computing: Art, Magic, Science - Part IIETH Zurich via edX Web Application Development: Basic Concepts
University of New Mexico via Coursera Web Application Development: The Presentation Tier
University of New Mexico via Coursera Técnicas Avançadas para Projeto de Software
Instituto Tecnológico de Aeronáutica via Coursera Programmation objet immersive en Pharo
Inria (French Institute for Research in Computer Science and Automation) via France Université Numerique