Learn best practices of software design to provide flexible and reusable software solution

Subtitles are available for Introduction, Case Study and Design Patterns Concepts.

Design and architecture of any software/solution provides the base and makes it flexible, extensible for future requirements. A good designed software/solution makes it easy to understand and maintain. Design patterns are known as best practices to design software for problems which are repeated in nature.

This course "" gives you understanding of all 23 patterns described in Gang Of Four book - "Design Patterns: Elements of Reusable Object-Oriented Software", by Gamma, Helm, Johnson and Vlissides.

Each pattern is explained in a simple way with intent, problem, solution and structure. Also the information of participants, collaboration, consequences and implementation are explained for each one. The pattern structure or example implementation of C++ source are explained to understand how it will be implemented in Object Oriented language C++.

The course also provides C++ source code of each pattern to understand it in better way. This helps in applying the variation on implementation to see how it can resolve some other implementation bottleneck. There are quizzes after Creational, Structural and Behavioral patterns to check your understanding.

This course will help to understand the best practices for design and apply them to do the better design of software/solution in C++.

It will be good to have the Gang Of Four book - "Design Patterns: Elements of Reusable Object-Oriented Software", by Gamma, Helm, Johnson and Vlissides as a reference book for this course.