What you'll learn

  • Understand what structural design patterns are

  • How structural patterns help create bigger structures through inheritance & composition

  • Implement structural design patterns using Modern C++ features

  • Full lifetime access
  • Access on mobile
  • Certificate of Completion

    What you should know before enrolling in this course

    • Basic knowledge of C++
    • Good understanding of Object Oriented Programming

Course Description

This course aims to help you understand & implement Structural Design Patterns. Each pattern is explained with multiple examples and through modern C++. This helps you understand how the pattern can be implemented efficiently using language features. I provide real-world  examples written in Modern C++. These examples will compile & execute on any platform that supports a C++ compiler.

You'll learn patterns using the following process:


This is an intensive discussion that spans multiple lectures. At the end of each section, you'll understand the pattern in depth and can apply it in your code or easily clear any design interview.

Course curriculum

  • 1

    Start Here

  • 2

    Basic Concepts

  • 3

    Adapter

  • 4

    Facade

    • Source Code

    • Introduction

    • Basic Example

      FREE PREVIEW
    • Console Project - I

    • Console Project - II

    • Console Project - III

    • Console Project - IV

    • Console Facade on Linux

    • Pros & Cons

  • 5

    Proxy

    • Source Code

    • Introduction

    • Basic Example

      FREE PREVIEW
    • Virtual Proxy - I

    • Virtual Proxy - II

    • Virtual Proxy - III

    • Protection Proxy - I

    • Protection Proxy - II

    • Protection Proxy - III

    • Remote Proxy - I

    • Remote Proxy - II

    • Remote Proxy - III

    • Smart Proxy

    • Pros & Cons

    • Review

  • 6

    Decorator

    • Source Code

    • Introduction

    • Basic Example - I

    • Basic Example - II

    • Streams - I

    • Streams - II

    • Streams - III

    • Streams - IV

    • Streams - V

    • Streams - VI

    • Decorator Types

    • Static Decorator

    • Functional Decorator

    • Pros & Cons

  • 7

    Composite

    • Source Code

    • Introduction

    • Intent & Implementation Overview

    • Basic Example

      FREE PREVIEW
    • UI Example Overview

    • UI Example - I

    • UI Example - II

    • UI Example - III

    • Pros & Cons

  • 8

    Bridge

    • simple2D Library Installation

    • Source Code

    • Introduction

    • Intent & Implementation Overview

    • Basic Example

      FREE PREVIEW
    • Shapes Hierarchy - I

    • Shapes Hierarchy - II

    • Shapes Hierarchy - III

    • Shapes Hierarchy - IV

    • Issues

    • Bridge Implementation

    • Handle-Body - I

    • Handle-Body - II

    • Handle-Body - III

    • PIMPL - I

    • PIMPL - II

    • Static Bridge

    • Pros & Cons

    • Review

  • 9

    Flyweight

    • Source Code

    • Intent & Implementation Overview

    • Introduction

    • Basic Implementation

      FREE PREVIEW
    • Game Implementation - I

    • Game Implementation - II

    • Game Implementation - III

    • String Interning - I

    • String Interning - II

    • String Interning - III

    • Boost.Flyweight

    • Pros & Cons

    • Before you go...

Instructor(s)

Owner at Poash Technologies & Poash Learning

Umar Lone

Civil engineer who found his calling in software development. Never worked as a Civil engineer, jumped at the first chance and started teaching C++, Visual C++ & COM 18 years ago. Currently, trains software professionals in various IT companies in India in different technologies, such as C++, Advanced C++, STL, Design Patterns, Android, Unity, Linux, etc. Very passionate about teaching and has trained more than 35,000 software professionals in a teaching career spanning more than 2 decades. An avid gamer, currently trying his hand with game development in Unity & Unreal. Has a few Android applications to his credit, including one on Design Patterns. Only thing he likes more than C++ is Modern C++.

FAQ

  • Why should I purchase this course?

    This is one of a kind course on Design Patterns with examples that use Modern C++ features. (C++11/14/17).

  • The same course is also available on Udemy & other platforms. Why should I purchase from here?

    Because the course here will have exclusive content, not available on other platforms. You'll also have direct access to the instructor and can ask for support anytime during your learning.

  • How soon are the student queries answered?

    In 1 hour or less, depending on the student time zone.

  • What do I get when I purchase this course?

    Access to the course videos, source code & slide deck.

  • What if I don't like the course & want a refund?

    You can get a refund within 30 days after purchasing the course, as long as the course engagement is less than 30 minutes.

  • Can I watch this course on a mobile device?

    Yes, and you don't have to download any app. The website is optimized for viewing on all mobile devices (Android/iOS).

  • Can you also do a live training for a group of students or a company?

    Certainly. Send an email to [email protected].

  • I've some more questions.

    We'll be glad to answer. Just send an email to [email protected].

New course notifications

Add your email to the mailing list to get the updates about new courses, live training, coupons & special offers