Sobes.tech
Junior

Milyen funkciók után lehet pontot tenni és folytatni a következő metódus hívását?

sobes.tech MI

Válasz az MI-től

Ugyanazon osztály vagy hasonló interfésszel rendelkező osztály objektumát visszaadó függvények után, amelyek lehetővé teszik a hívási lánc folytatását. Ez a Method Chaining tervezési minta révén lehetséges.

Ilyen esetek példái:

  • Objektumot visszaadó getterek: objektum.getProperty().anotherMethod()
  • this-et visszaadó setterek: objektum.setProperty(érték).anotherProperty(érték2)
  • Ugyanazon típusú új objektumot visszaadó metódusok: objektum.filter(...).sort(...)
  • Objektumok létrehozása és konfigurálása: new Builder().step1().step2().build()
# Pythonban például Method Chaining
class Car:
    def __init__(self):
        self.color = None
        self.engine = None

    def set_color(self, color):
        self.color = color
        return self # Visszaadja önmagát a lánc folytatásához

    def set_engine(self, engine):
        self.engine = engine
        return self

    def drive(self):
        print(f"Vezetve egy {self.color} autó, motorja {self.engine}.")

# Method Chaining használata
my_car = Car().set_color("piros").set_engine("V8")
my_car.drive()