This course includes
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...
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
What You'll Learn
An understanding of the differences between software design and architectural patterns
Show more
Course Content
Introduction
Introduction to Design Patterns
Deep Dive into Design Patterns
More Design Patterns
Idioms
Architectural Patterns
6 Lessons
Patterns for Concurrency
13 Lessons
Conclusion
1 Lesson
Course Author
Trusted by 1.4 million developers working at companies
Anthony Walker
@_webarchitect_
Evan Dunbar
ML Engineer
Carlos Matias La Borde
Software Developer
Souvik Kundu
Front-end Developer
Vinay Krishnaiah
Software Developer
Eric Downs
Musician/Entrepeneur
Kenan Eyvazov
DevOps Engineer
Souvik Kundu
Front-end Developer
Eric Downs
Musician/Entrepeneur
Anthony Walker
@_webarchitect_
Evan Dunbar
ML Engineer
See how Educative uses AI to make your learning more immersive than ever before.
Instant Code Feedback
AI-Powered Mock Interviews
Adaptive Learning
Explain with AI
AI Code Mentor