Skip to content

nkhlktn/Design_patterns_CPP

Repository files navigation

Duck

This project was created to learn about design patterns.

Design Principles

  1. Identify the aspects of your application that vary and separate them from what stays same.

  2. Program to an interface and not to an implementation.

  3. Favour composition over inheritance.

  4. Loosely coupled objects should be favoured.

  5. Classes should be closed for modification but should be open for extension.

  6. Depend upon abstractions but do not depend upon concrete classes (Dependency inversion principle).

  7. Law of demeter or principle of least knowledge or friends.

OO Patterns

1)Strategy

2)Observer

3)Decorator

4)Simple factory

5)Abstract factory

6)Singleton

7)Command

8)Adapter

9)Facade

  1. Iterator (not implemented as STL is the best resource for aggregates and iterators)

  2. Composite

  3. State

About

Design Patterns in C++

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published