I am going to try and do the design patterns in the simpler way possible. Let's see.
- To create an Object - Creational Patterns - How are we creating an object is very important.
- To compose an Object - Structural Patterns - How are we adding properties to the Object.
- To make the Object communicate with other objects - Behavioral Patterns - How is our object going to communicate with other objects.
- Singleton Pattern - When we could create only one object out of a class. Only one instance. A new instance is not needed at all. For ex, Console.log(). We do not create a new object for it everytime.