Dot Net Design Patterns with Real-time Examples
In this article series, I am going to discuss most of the used Dot Net Design Patterns with real-time examples using different types of dot net applications which includes ASP.NET MVC, Web API, and Console Applications.
It is very easy to understand and implement design patterns with real-time applications. Writing the code with design patterns will make your applications more Reliable, Scalable and Maintainable.
What are Design Patterns?
The Design Patterns are reusable solutions to the problems that as a developer we encounter in our day to day programming. Design Patterns are basically used to solve the problems of object generation and integration.
These tutorials are design for beginners as well as professionals developers who want to learn Dot Net Design Patterns with Real-time Examples step by step from the very basics to the advanced concepts of many different types of Dot Net Design Patterns with real-time examples. This Dot Net Design Patterns tutorial provides a hands-on approach to the subject with step-by-step programming examples that will assist you to learn and put the acquired knowledge into practice.
History and evolution of design Patterns
The four authors of the book famously know as Gang of four is the ones who brought the concepts of design patterns in their book “Elements of Reusable Object-Oriented Software”.
Gang of Four has divided the book into two parts with the first part explaining the pros and cons of object-oriented programming and the second part describes the evolution of 23 classic software design patterns.
Types of Design Patterns
Gang of Four categorized the design patterns into 3 types based on different problems encountered in the real-world applications. They are Creational, Structural and Behavioral.
Creational design patterns:
As the name says these design patterns deal with the object creation and initialization. Creational design pattern gives the programmer more flexibility in deciding which objects need to be created for a given case.
Examples of Creational design patterns category: Singleton, Factory, Builder, Prototype and Abstract Factory, etc.
Structural design patterns:
These design patterns deal with the relationships between the entities i.e. class and object. In simple words, this pattern focuses on decoupling interface, implementation of classes and its objects.
Examples of Structural design patterns category: Adapter, Facade, and Bridge, etc.
Behavioral design patterns:
These patterns deal with communication between Classes and objects.
Examples of Behavioral design patterns: Chain of Responsibility, Command, and Interpreter, etc.
For understanding Design Patterns in C# better it is very important to have basic knowledge about the following object-oriented concepts
- Abstract classes