Design patterns are the best practices to solve out specific problems that have evolved over time.
Over the many years of practicing software development, experts have figured out ways of solving similar problems. These solutions have been encapsulated into design patterns.
Design pattern is a reusable software solution to a specific type of problems. It means, Someone has already applied it successfully in the past.
Types of Design Patterns :
- Creational Patterns
- Structural Designs
- Behavioral Designs
- Creational patterns focus on ways to create objects or classes.
- Structural design patterns focus on ways to manage relationships between objects so that your application is architected in a scalable way.
- Behavioral patterns focus on communication between objects.