Jump to ratings and reviews
Rate this book

Design Patterns in Modern C++: Reusable Approaches for Object-Oriented Software Design

Rate this book
Apply modern C++17 to the implementations of classic design patterns. As well as covering traditional design patterns, this book fleshes out new patterns and approaches that will be useful to C++ developers. The author presents concepts as a fun investigation of how problems can be solved in different ways, along the way using varying degrees of technical sophistication and explaining different sorts of trade-offs.Design Patterns in Modern C++ also provides a technology demo for modern C++, showcasing how some of its latest features (e.g., coroutines) make difficult problems a lot easier to solve. The examples in this book are all suitable for putting into production, with only a few simplifications made in order to aid readability.What You Will LearnApply design patterns to modern C++ programmingUse creational patterns of builder, factories, prototype and singletonImplement structural patterns such as adapter, bridge, decorator, facade and moreWork with the behavioral patterns such as chain of responsibility, command, iterator, mediator and moreApply functional design patterns such as Monad and moreWho This Book Is ForThose with at least some prior programming experience, especially in C++.

327 pages, Paperback

Published January 1, 2018

13 people are currently reading
42 people want to read

About the author

Dmitri Nesteruk

13 books4 followers

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
5 (16%)
4 stars
15 (48%)
3 stars
6 (19%)
2 stars
4 (12%)
1 star
1 (3%)
Displaying 1 - 5 of 5 reviews
Profile Image for Oleksandr.
15 reviews4 followers
April 13, 2021
+ Feels like the author really knows modern C++, C++ ecosystem, has a broad software development knowledge in general, and understands design patterns good enough to implement them in different ways. I've found a couple of eye-openers.

- Examples and code. Some code is really weird. Maybe it's just an effect of using c++ in general, so is more or less excusable, because, < T > is for Tears, you know. But examples. Almost every design pattern can be explained in a couple of sentences. There's no need for several pages of foreplay with genius/exotic examples just to understand the essence of a single paragraph.
Profile Image for Yves.
4 reviews
April 18, 2021
way to many errors all over the place.
and not only spelling errors or grammar errors, but also errors in the code examples.

it's a good idea to work out the design patterns using newest c++ features, this book could be good if it was reviewed thoroughly and the examples would have been worked out more.
49 reviews6 followers
November 30, 2019
The pros: The technical content is useful for programmers that are familiar with GoF patterns but still learning the range of expression possible in C++17. This was my situation and I got a lot out of the examples in the book.

The cons: This is not a good design patterns book. In 1995 presenting these twenty four patterns was brilliant. In 2019 limiting a book on design patterns to just the GoF patterns is negligent. When the GoF book came out, the patterns in that book were all the patterns that were published. Nowadays the list is too large to fit in one book. This book shouldn't be called Design Patterns in Modern C++ unless it genuinely means to cover all the design patterns. Perhaps this book would have made a better impression had it been presented as a C++17 companion reader for the original GoF book.

The book also suffers from editorial negligence. Phrases like "The preceding code above trivial" serve to divert the reader's focus away from the design pattern to trying to decipher the author's sentence.
52 reviews14 followers
October 27, 2018
It's not really fair to give it such a short reading date, I've been skimming it on and off for a few months, in tandem with the author's udemy lectures. However, I decided to go through the book front-to-back one last thorough time to complete my notes on the topic.

Pros:
- Covers design patterns in a much more elegant/succinct language than most books
- Showcases many modern c++ features and practices
- Lots of knowledge about practical considerations of the patterns

Cons:
- Not enough code examples, esp. relative to the video lectures
- Overall too short, more anecdotes or references to real projects/code-bases would make it a 5/5 book

Overall, worth a read if you want to review design patterns while seeing some fresh c++
Displaying 1 - 5 of 5 reviews

Can't find what you're looking for?

Get help and learn more about the design.