Sobes.tech
Junior — Middle

Factory dizayn shablonining roli nima va qaysi hollarda foydalaniladi?

sobes.tech AI

AIdan javob

Factory (fabrika) dizayn naqshoni ob'ektlarni aniq sinfini ochiq ko'rsatmasdan yaratish uchun ishlatiladi. U ob'ektlarni yaratish logikasini inkapsulyatsiya qiladi, mijoz kodiga aniq amalga oshirishlar o'rniga abstraktsiyalar bilan ishlash imkonini beradi.

Asosiy foydalanish holatlari:

  • Umumiy interfeysni amalga oshiradigan sinflar oilasidan ob'ektlar yaratish zarur bo'lsa.
  • Ob'ekt yaratish murakkab yoki qo'shimcha logika talab qilsa.
  • Kodni qo'llab-quvvatlash va kengaytirishni soddalashtirish uchun, yangi ob'ekt turlarini mijoz kodini o'zgartirmasdan qo'shish imkonini beradi.

C# misoli:

public interface IShape {
    void Draw();
}

public class Circle : IShape {
    public void Draw() => Console.WriteLine("Drawing Circle");
}

public class Square : IShape {
    public void Draw() => Console.WriteLine("Drawing Square");
}

public class ShapeFactory {
    public IShape GetShape(string shapeType) {
        return shapeType.ToLower() switch {
            "circle" => new Circle(),
            "square" => new Square(),
            _ => null
        };
    }
}

// Foydalanish
var factory = new ShapeFactory();
IShape shape = factory.GetShape("circle");
shape.Draw();

Shu tarzda, Factory ob'ektlarni yaratishni soddalashtiradi va arxitekturaning moslashuvchanligini oshiradi.