Sobes.tech
Junior

რომელ ფუნქციებს შემდეგ წერტილი უნდა დაუსვათ და შემდეგი მეთოდის გამოძახება განაგრძოთ?

sobes.tech AI

პასუხი AI-სგან

სწორედ იგივე კლასი ან მსგავსი ინტერფეისის მქონე კლასი, რომელიც აბრუნებს ობიექტს (მათ შორის მიმდინარე ობიექტს), რაც საშუალებას იძლევა მოწოდების ჯაჭვის გაგრძელება. ეს შესაძლებელია დიზაინის ნიმუშის Method Chaining-ის საშუალებით.

ასეთი შემთხვევების მაგალითები:

  • გეტერები, რომლებიც აბრუნებენ ობიექტს: ობიექტი.getProperty().anotherMethod()
  • this-ს აბრუნებადი სეტერები: ობიექტი.setProperty(მნიშვნელობა).anotherProperty(მნიშვნელობა2)
  • მეთოდები, რომლებიც აბრუნებენ ახალი ობიექტს იგივე ტიპის: ობიექტი.filter(...).sort(...)
  • ობიექტების შექმნა და კონფიგურაცია: new Builder().step1().step2().build()
# Python-ში Method Chaining-ის მაგალითი
class Car:
    def __init__(self):
        self.color = None
        self.engine = None

    def set_color(self, color):
        self.color = color
        return self # აბრუნებს თავის თავს ჯაჭვის გაგრძელებისთვის

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

    def drive(self):
        print(f"მართვა {self.color} მანქანით, რომლის ძრავია {self.engine}.")

# Method Chaining-ის გამოყენება
my_car = Car().set_color("წითელი").set_engine("V8")
my_car.drive()