Junior — Middle
In welke gevallen en voor welke taken wordt het Factory Method patroon toegepast?
sobes.tech AI
Antwoord van AI
Het Factory Method-patroon wordt gebruikt om objecten te maken zonder de specifieke klasse van het te maken object aan te geven. Dit is handig wanneer:
- Het creëren van objecten gedelegeerd moet worden aan subklassen.
- Flexibiliteit en uitbreidbaarheid van de code vereist zijn.
- De logica van het maken van objecten verborgen moet worden voor de klant.
Voorbeeld in Python:
from abc import ABC, abstractmethod
class Transport(ABC):
@abstractmethod
def deliver(self):
pass
class Truck(Transport):
def deliver(self):
print("Levering met vrachtwagen")
class Ship(Transport):
def deliver(self):
print("Levering met schip")
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()
# Gebruik
logistics = RoadLogistics()
logistics.plan_delivery() # Output: Levering met vrachtwagen
Op deze manier maakt het Factory Method-patroon het mogelijk om objecten van verschillende klassen te maken zonder de code die ze gebruikt te wijzigen.