Home>Courses>Master Software Design Patterns and Architecture in C++

Master Software Design Patterns and Architecture in C++

Gain insights into software design patterns and architecture in C++. Learn about C++ idioms, concurrency patterns, and apply the right solutions to improve code quality and productivity.

Intermediate

111 Lessons

30h

Certificate of Completion

Gain insights into software design patterns and architecture in C++. Learn about C++ idioms, concurrency patterns, and apply the right solutions to improve code quality and productivity.
AI-POWERED

Explanations

AI-POWERED

Explanations

This course includes

96 Playgrounds
11 Quizzes
Course Overview
What You'll Learn
Course Content
Recommendations

Course Overview

Software engineering researchers and practitioners noticed that parts of software projects could often be solved using approaches that were discovered earlier to solve similar problems. This led to the documentation of software design and architectural patterns, which are known solution approaches to a class of problems. This course starts by putting software patterns into perspective by answering the question, “What is a software pattern, and how is it different from an algorithm?” You will then learn ab...Show More
Software engineering researchers and practitioners noticed that parts of software projects could often be solved using approache...Show More

What You'll Learn

An understanding of the differences between software design and architectural patterns
A working knowledge of the difference between patterns and algorithms
A deep understanding of common software design and architectural patterns
Hands-on experience working with useful C++ idioms
Familiarity with the key patterns for concurrency
An understanding of the differences between software design and architectural patterns

Show more

Course Content

1.

Introduction

2 Lessons

Get familiar with enhancing software development through design, concurrency, and architectural patterns.

4.

More Design Patterns

25 Lessons

Enhance your skills in using and implementing various design patterns for software architecture.

5.

Idioms

31 Lessons

Explore idioms like RAII, Copy-and-Swap, and CRTP for efficient resource management in C++.

6.

Architectural Patterns

6 Lessons

Focus on key architectural patterns like Layered, Pipes-and-Filters, Broker, MVC, and Reactor.

8.

Conclusion

1 Lessons

Get familiar with software design patterns, C++ idioms, and advanced architectural concepts.

Course Author

Trusted by 2.6 million developers working at companies

Hands-on Learning Powered by AI

See how Educative uses AI to make your learning more immersive than ever before.

Instant Code Feedback

Evaluate and debug your code with the click of a button. Get real-time feedback on test cases, including time and space complexity of your solutions.

AI-Powered Mock Interviews

Adaptive Learning

Explain with AI

AI Code Mentor

Free Resources

FOR TEAMS

Interested in this course for your business or team?

Unlock this course (and 1,000+ more) for your entire org with DevPath