C++ Design Patterns

blur

Learn Path Description

Design patterns provide developers with templates on how to solve software development problems without reinventing the wheel every time. For C++ developers, understanding design patterns and when to apply them is a cornerstone skill. When mastered, design patterns cover provide the developer with a library of elegant solutions to commonly occurring problems in software development. This path covers the most commonly used design patterns in C++.

Skills You Will Gain

Courses In This Learning Path

blur
icon

Total Duration

4.2 hours

icon

Level

Intermediate

icon

Learn Type

Certifications

Design Patterns in C++: Creational

This article will discuss the creational design patterns as well as their implementation with Modern C++. This article covers the Factory design pattern (Factory Method and Abstract Factory), as well as Builder, Prototype and Singleton. It also covers the SOLID design principles and demonstrates Dependency Injection via Boost.DI.

blur
icon

Total Duration

2.4 hours

icon

Level

Intermediate

icon

Learn Type

Certifications

Design Patterns in C++: Structural - Adapter to Decorator

Developers and architects need to be able to recognize and correctly apply design patterns. This course Design Patterns in C++ - Structural- Adapter and Decorator, part of a multi-series course about C++ patterns, introduces you the Structural design patterns. You'll start with the Bridge and Adapter patterns. Next, you will move on to the Composite and Decorator designs patterns. These patterns can also be used in modern C++ (C++11 and beyond). Software needed: A C++ IDE (e.g. Visual Studio, CLion), or a text editor, (e.g. VIM, EMACS), along with a C++ compiler.

blur
icon

Total Duration

1.46 hour

icon

Level

Intermediate

icon

Learn Type

Certifications

Design Patterns in C++: Structural - Facade to Proxy

Developers and architects need to be able to recognize and correctly apply design patterns. Design Patterns in C++ - Facade and Proxy is part of a series on C++ patterns. It introduces you to the structural design patterns. This course covers the Facade and Flyweight design patterns as well as Null Object and Proxy design patterns. It also demonstrates how these patterns can be used in modern C++ (C++11 and beyond). First, we'll discuss Facade. Facade is a way to hide complex systems (often involving multiple components and their relationships), behind one, simple-to-use interface. Flyweight is used to share as much data with as many objects as possible, saving memory. Next, you will learn about Null Objects. This allows you to provide a neutral, no-op object that conforms to the interface, but does nothing. Proxy design patterns are the final topic. This allows an object to'stand in for' another object and conforms to the same interface while performing additional functions. These design patterns can be recognized in other libraries, and you will be able then to apply them in your own work.

blur
icon

Total Duration

2.8 hours

icon

Level

Intermediate

icon

Learn Type

Certifications

Design Patterns in C++: Behavioral - Chain of Responsibility to Memento

Developers and architects need to be able to recognize and correctly apply design patterns. This course, Design Patterns In C++: Behavioral- Chain of Responsibility to Memento introduces you to the Behavioral design patterns. It includes the Chain of Responsibility and Command, Interpreter. Iterator, Mediator and Iterator design patterns. These patterns can be applied in modern C++ (C++11 and beyond), in a variety of ways. This course will help you become more familiar with C++ behavioral design patterns. Software requirements: A C++ IDE (e.g. Visual Studio, CLion), or a text editor, (e.g. VIM, EMACS), along with a C++ compiler.

blur
icon

Total Duration

2 hours

icon

Level

Intermediate

icon

Learn Type

Certifications

Design Patterns in C++: Behavioral - Observer to Visitor

Developers and architects need to be able to recognize and correctly apply design patterns. Part of a multi-series course about C++ patterns Design Patterns in C++ - Behavioral - Observer to Visitors, this course continues to introduce viewers to Behavioral design patterns. This course covers the Observer and State patterns. It also shows how these patterns can be used in modern C++ (C++11 and beyond). Software needed: A C++ IDE (e.g. Visual Studio, CLion), or a text editor, (e.g. VIM, EMACS), along with a C++ compiler.

blur