OOP design patterns are solutions to recurring problems in software engineering. Historically, the pioneering work on design patterns was done by the Gang of Four.

Creational Patterns

Creational Design Pattern

Behavioural Patterns

Behavioural Design Pattern