Part 4. Design patterns solve application architecture problems

Design patterns take our object-oriented software design skills up to the next level. They are models from which we can create well-designed solutions to many common software architecture problems. Software architecture refers to how we structure the code of our application—the classes and subclasses we design and how they relate to one another and interact at run time. Developers over many years and across different industries have proven that these patterns model reliable and flexible solutions that adhere to good design principles.

Some example architecture problems that design patterns can help solve are the following:

  • An application uses a family of algorithms. Can we encapsulate ...

Get Object-Oriented Software Design in C++ now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.