Junior — Middle
96
Ի՞նչ դեպքերում և ինչ խնդիրների համար է կիրառվում Factory Method դիզայնի նմուշը։
Ընկերությունները, որտեղ հարցրել են
Պատասխան AI-ից
sobes.tech AI
Factory Method մոդելը օգտագործվում է օբյեկտներ ստեղծելու համար առանց կոնկրետ դասը նշելու։ Սա օգտակար է, երբ՝
- Պետք է հանձնարարել օբյեկտների ստեղծումը ենթակլասներին։
- Կոդի ճկունությունն ու ընդլայնելիությունը ապահովելու համար։
- Պետք է թաքցնել օբյեկտների ստեղծման տրամաբանությունը հաճախորդից։
Python-ում օրինակ՝
from abc import ABC, abstractmethod
class Transport(ABC):
@abstractmethod
def deliver(self):
pass
class Truck(Transport):
def deliver(self):
print("Բեռնատարով առաքում")
class Ship(Transport):
def deliver(self):
print("Նավով առաքում")
class Logistics(ABC):
@abstractmethod
def create_transport(self) -> Transport:
pass
def plan_delivery(self):
transport = self.create_transport()
transport.deliver()
class RoadLogistics(Logistics):
def create_transport(self) -> Transport:
return Truck()
class SeaLogistics(Logistics):
def create_transport(self) -> Transport:
return Ship()
# Օգտագործում
logistics = RoadLogistics()
logistics.plan_delivery() # Արտածում՝ Բեռնատարով առաքում
Այսպիսով, Factory Method-ը հնարավորություն է տալիս տարբեր դասերի օբյեկտներ ստեղծել՝ առանց փոփոխելու նրանց օգտագործման կոդը։