Video description
The course takes a structured approach to explain each pattern, starting with an introduction and then diving into its intent, structure, participants, and communication with the client. The UML class diagram is provided to illustrate the pattern’s structure and how classes interact with each other.
The guide includes a simple example implementation of the pattern, which helps students understand the pattern’s implementation and application in real-life scenarios. However, the course also highlights potential design issues in the example and explains how to refactor and apply the pattern effectively to avoid errors.
One of the key strengths of this guide is that it goes beyond a single implementation of each pattern. Then it discusses multiple implementations of the same pattern, helping students expand their knowledge of the pattern and how it can be applied in different scenarios. The pros and cons of each pattern are also discussed, providing students with a well-rounded understanding of each pattern’s strengths and limitations.
The different types of design patterns that you will study include Strategy, Template Method, Command, Memento, CoR (Chain of Responsibility), Observer, Mediator, Visitor, Interpreter, State, and Iterator. In addition to this, you will also learn about the pros and cons of each pattern.
By the end of this course, you will be well-versed with behavioral design patterns and will have developed the skills to implement them in modern C++.
What You Will Learn
- Implement behavioral design patterns using modern C++ features
- See how behavioral design patterns use compile and runtime polymorphism
- Look at the Strategy, Template Method, and Command design patterns
- Learn Memento, CoR (Chain of Responsibility), and State design patterns
- See Observer, Mediator, Visitor, Interpreter, and Iterator design patterns
- Explore the pros and cons of each design pattern
Audience
If you are a student who wants to get a basic understanding of design patterns; a software developer, project manager, or an architect who wants to understand and implement design patterns in their projects; or a C++ developer who wants to implement design patterns in C++, this course is for you. To get started with this course, it is necessary to have basic knowledge of C++ and object-oriented programming concepts.
About The Author
Umar Lone: Umar Lone is a civil engineer who found his calling in software development. He started teaching C++ and Visual C++ 15 years ago. Currently, he trains software professionals in various software companies in India in different technologies, such as modern C++, advanced C++, STL, design patterns, Android, Unity, Linux, and more. He is extremely passionate about teaching and has trained more than 20,000 software professionals.
An avid gamer, Umar is currently trying his hand at game development in Unity and Unreal. He has a few Android applications to his credit, including one on design patterns. The only thing he likes more than C++ is Modern C++.
Table of contents
- Chapter 1 : Introduction to the Course
- Chapter 2 : Basic Concepts
-
Chapter 3 : Strategy
- Introduction
- Basic Example
- Spreadsheet Application - I
- Spreadsheet Application – II
- Spreadsheet Application - III
- Spreadsheet Application - IV
- Spreadsheet Application – V
- Dynamic Array - I
- Dynamic Array - II
- Dynamic Array - III
- Dynamic Array - IV
- Null Object Pattern
- Static Strategy
- Function Strategy - I
- Function Strategy - II
- Non-Member Strategy Pointer
- Pros and Cons
- Chapter 4 : Template Method
-
Chapter 5 : Command
- Introduction
- Intent
- Basic Implementation - I
- Basic Implementation - II
- FindDialog - I
- FindDialog - II
- TextPad - I
- TextPad - II
- TextPad - III
- TextPad - IV
- TextPad - V
- TextPad - VI
- TextPad - VII
- TextPad - VIII
- TextPad - IX
- Undo - I
- Undo - II
- Undo - III
- Undo - IV
- Undo - V
- DataList - I
- DataList - II
- Pros and Cons
- Chapter 6 : Memento
- Chapter 7 : Chain of Responsibility
- Chapter 8 : Observer
- Chapter 9 : Mediator
- Chapter 10 : Visitor
- Chapter 11 : Interpreter
- Chapter 12 : State
-
Chapter 13 : Iterator
- Introduction
- Basic Implementation
- Organization - I
- Organization - II (Cursor)
- Organization - III (Iterator)
- Containers - I (Array)
- Containers - II (List)
- Containers - III (Issues)
- Containers - IV (ArrayIterator)
- Containers - V (ListIterator)
- C++ Iterators - I
- C++ Iterators - II
- C++ Iterators - III (More Iterators)
- Pros and Cons
Product information
- Title: Behavioral Design Patterns in C++
- Author(s):
- Release date: April 2023
- Publisher(s): Packt Publishing
- ISBN: 9781804615652
You might also like
video
Modern C++ Design Patterns
This course provides beginning to intermediate C++ developers with the knowledge required for up-to-date C++ programming. …
book
Modern C++ Design: Generic Programming and Design Patterns Applied
Modern C++ Design is an important book. Fundamentally, it demonstrates ‘generic patterns’ or ‘pattern templates’ as …
book
C++ Software Design
Good software design is essential for the success of your project, but designing software is hard …
video
Creational Design Patterns in Modern C++
The best way to solve common object-oriented design problems is by implementing design patterns. However, understanding …