К содержимому
learnspaceYOUR NEXT CHAPTER
ПРОСТРАНСТВО ОБУЧЕНИЯ
ГлавнаяКаталог курсовМоё обучениеCoursera

Знания без границ

Учитесь у лучших университетов и компаний мира.

Открыть Coursera
Интеграция
Пространство университета
Моё пространствоСтраница курса
↵
ЯЛичный кабинетСтудент
© 2026 LearnSpaceКаждый день — возможность узнать больше.Помощь
Structural Design Patterns in Modern C++ · LearnSpace
Назад в каталог
courseraПрограммирование

Structural Design Patterns in Modern C++

Курс от Packt
Средний≈ 11.5 чАнглийский
О курсеНавыкиПрограммаПреподаватели

О курсе

Updated in May 2025. This course now features Coursera Coach! A smarter way to learn with interactive, real-time conversations that help you test your knowledge, challenge assumptions, and deepen your understanding as you progress through the course. This course guides you through the most important structural design patterns in modern C++, starting with an introduction to core concepts like design patterns, S.O.L.I.D. principles, and UML class diagrams. You’ll explore a wide range of patterns, including Adapter, Façade, Proxy, and others, with step-by-step explanations. Each module introduces a pattern, presents real-world examples, and provides implementation strategies. You’ll learn how to apply these patterns in practical scenarios, such as designing game input interfaces, implementing console projects, and optimizing resource usage with proxies. By analyzing each pattern’s pros and cons, you’ll gain insights into when and why to use each approach in your own software projects. The course also focuses on enhancing performance and modularity, showing how design patterns reduce code complexity and promote reuse. As you progress, you’ll deepen your understanding of advanced C++ concepts, such as smart pointers, shared resources, and pattern-specific idioms. By the end of the course, you’ll be able to confidently apply these patterns to create scalable, maintainable applications, mastering the art of high-level design in modern C++. This course is designed for intermediate to advanced C++ developers familiar with object-oriented programming principles. A basic understanding of C++ syntax and familiarity with coding projects is recommended. No previous experience with design patterns is required.

Навыки, которые вы освоите

Software Design PatternsMemory ManagementSoftware ArchitectureC++ (Programming Language)Object Oriented DesignSoftware DesignProgramming PrinciplesMaintainabilityUnified Modeling LanguageDiagram DesignCode ReusabilityC and C++Object Oriented Programming (OOP)

Программа курса

8 модулей · 94 учебных материалов

01Introduction8 материалов

Introduction

Course OverviewВидеоFull Course ResourcesЧтениеIntroduction to Design PatternsВидеоOverview of Unified Modeling Language (UML) Class DiagramsВидео

Учитесь у экспертов

Packt - Course Instructors

Преподаватель курса

Structural Design Patterns in Modern C++
В каталоге вашей программы

Инвестируйте в себя

Новые знания — в удобное для вас время.

Начать на Coursera

Обучение откроется на Coursera
в новой вкладке

Обучение на Coursera

≈ 11.5 ч

8 модулей

Язык: Английский

Субтитры: Арабский, Французский, Итальянский, Бразильский португальский, Корейский, Немецкий, Индонезийский, Испанский, Японский

Часть программы вашего университета
Single-Responsibility, Open-Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion (S.O.L.I.D.) Principles - Part IВидео
Single-Responsibility, Open-Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion (S.O.L.I.D.) Principles - Part IIВидео
Single-Responsibility, Open-Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion (S.O.L.I.D.) Principles - Part IIIВидео
Structural Design Patterns OverviewВидео
02Adapter Design Pattern8 материалов

Adapter Design Pattern

Introduction to the Adapter PatternВидеоBasic ExampleВидеоGame InputВидеоUsing the Adapter PatternВидеоAdapter ImplementationВидеоClass AdapterВидеоUnderstanding the Adapter Design PatternDIALOGUEPros and ConsВидео
03Façade Design Pattern10 материалов

Façade Design Pattern

Introduction to the Façade PatternВидеоBasic ExampleВидеоConsole Project - Part IВидеоConsole Project - Part IIВидеоConsole Project - Part IIIВидеоConsole Project - Part IVВидеоConsole Façade for LinuxВидеоPros and ConsВидеоUnderstanding the Facade Design PatternDIALOGUEAssessment 1Задание
04Proxy Design Pattern14 материалов

Proxy Design Pattern

Introduction to the Proxy PatternВидеоBasic ExampleВидеоIntroducing Virtual ProxyВидеоImplementing Virtual ProxyВидеоApplying Virtual ProxyВидеоIntroduction to Protection ProxyВидеоProtection Proxy ExampleВидеоApplying Protection ProxyВидеоRemote Proxy IntroductionВидеоExample of the Remote ProxyВидеоUsing the Remote Proxy as a Component Object Model (COM) ComponentВидеоSmart ProxyВидеоPros and ConsВидеоUnderstanding Proxy Design PatternDIALOGUE
05Decorator Design Pattern14 материалов

Decorator Design Pattern

Introduction to the Decorator PatternВидеоBasic ExampleВидеоAdding the Abstract Decorator ClassВидеоImplementing and Applying StreamsВидеоAdding Buffering to StreamsВидеоAdding the BufferedStream ClassВидеоAdding Encryption and Compression Support to StreamsВидеоUsing Composition Instead of InheritanceВидеоAdding the Abstract Decorator Class to Stream Class HierarchiesВидеоDecorator TypesВидеоStatic DecoratorВидеоFunctional DecoratorВидеоPros and ConsВидеоUnderstanding the Decorator Pattern in C#DIALOGUE
06Composite Design Pattern10 материалов

Composite Design Pattern

Introduction to the Composite PatternВидеоComposite Intent and Implementation OverviewВидеоBasic ExampleВидеоUser Interface (UI) Example OverviewВидеоUser Interface (UI) Example - Part IВидеоUser Interface (UI) Example - Part IIВидеоUser Interface (UI) Example - Part IIIВидеоPros and ConsВидео Exploring the Composite Design PatternDIALOGUEAssessment 2Задание
07Bridge Design Pattern16 материалов

Bridge Design Pattern

Introduction to the Bridge PatternВидеоBridge Intent and Implementation OverviewВидеоBasic ExampleВидеоShapes Hierarchy and Implementing the Line ClassВидеоAdding More Shape ClassesВидеоAdding Support for Rendering through OpenGLВидеоShapes Hierarchy IssuesВидеоBridge ImplementationВидеоHandle-BodyВидеоCreating the String ClassВидеоImplementing Sharing for String ObjectsВидеоPointer to IMPLementation (Plmpl) - Part IВидеоPointer to IMPLementation (Plmpl) - Part IIВидеоStatic BridgeВидеоPros and ConsВидеоUnderstanding the Bridge Design PatternDIALOGUE
08Flyweight Design Pattern14 материалов

Flyweight Design Pattern

Introduction to the Flyweight PatternВидеоIntent and Implementation OverviewВидеоBasic ImplementationВидеоGame Implementation - Part IВидеоGame Implementation - Part IIВидеоGame Implementation - Part IIIВидеоCreating String ClassВидеоAdding StringInfo for Sharing Internal StringsВидеоImplementing String InterningВидеоBoost.FlyweightВидеоPros and ConsВидеоAssessment 3ЗаданиеFull Course Practice AssessmentЗаданиеFull Course AssessmentЗадание