همان طور که میدانید از الگوی Factory به عنوان روشی برای کاهش وابستگی اجزای یک سیستم استفاده میشود. در این مقاله میخواهیم با استفاده از جنریکها، الگوی Abstract Factory را پیاده سازی کنیم.
1) ایجاد یک کلاس به نام AbstractFactory و یک متد جنریک به نام CreateObject
2) ساخت کلاسهای مورد نظر
3) حال در یک برنامهی کنسول ویندوز، از کلاس AbstractFactory به شکل زیر استفاده میکنیم
خروجی کد بالا
1) ایجاد یک کلاس به نام AbstractFactory و یک متد جنریک به نام CreateObject
public class AbstractFactory { public static T CreateObject<T>() where T : class , new() { return new T(); } }
public class Product { public void DisplayInfo() { Console.WriteLine("Product Class Craeted. "); } }
public class Category { public void DisplayInfo() { Console.WriteLine("Category Class Created."); } }
3) حال در یک برنامهی کنسول ویندوز، از کلاس AbstractFactory به شکل زیر استفاده میکنیم
static void Main(string[] args) { var p = AbstractFactory.CreateObject< Product>(); p.DisplayInfo(); Console.WriteLine("======"); var c = AbstractFactory.CreateObject<Category>(); c.DisplayInfo(); Console.WriteLine("======"); Console.ReadKey(); }