Design patterns are the coding patterns that are used to provide solutions to commonly occurring problems during the software design. They are some kind of pre-configured blueprints which can be customizable for solving design problems that might occur in your code.
Here, in this repository I have included definition and practical implementation of some of the common design patterns that are used in the software development.