Creational Design Pattern in C#
In this article, I am going to give a brief introduction to the Creational Design Pattern in C#. As part of this article, we are going to discuss the following three important things.
What is the Creational Design Pattern in C#?
According to Wikipedia, in software engineering, creational design patterns are design patterns that deal with object creation mechanisms i.e. trying to create objects in a manner that is suitable to a given situation. In simple words, we can say that the Creational Design Pattern deals with Object Creation and Initialization. This Design Pattern gives the programmer more flexibility in deciding which objects need to be created for a given situation.
The Creational design patterns are categorized into two types. They are as follows:
- Object-creational patterns: Object-creational patterns deal with object creation. Here, it defers part of its object creation to another object.
- Class-creational patterns: The Class-creational patterns deal with class-instantiation. Here, it defers its object creation to subclasses
When to use the Creational Design Pattern?
In real-time applications, the project is created with a lot of classes. A lot of classes mean we are dealing with a lot of objects. So we need to create different objects (like new Customer(), new Product(), new Invoice(), etc.). If the object creations logic based on some condition is implemented in the client code, then it leads to lots of complicated logic in the client code. That means if the object creations and initialization logic are not centralized then it leads to a very complicated code. The Creational Design Pattern helps us to centralized the object creation logic and depending upon the condition, it will create, initialize, and returns the appropriate object to the client.
Examples of Creational Design Pattern in C#:
The following 6 design patterns belong to the Creational Design Pattern category.
- Singleton Design Pattern
- Factory Design Pattern
- Abstract Factory Design Pattern
- Builder Design Pattern
- Fluent Interface Design Pattern
- Prototype Design Pattern
In the next article, I am going to discuss the Factory Design Pattern in C# with some real-time examples. some examples. Here, in this article, I try to give a brief introduction to the Creational Design Pattern. I hope you understood the need and use of the Creational Design Pattern in C#.