การเชื่อมโยงวิธีการ
Method chaining เป็นเทคนิคที่ใช้สำหรับการเรียกหลายเมธอดบนอ็อบเจกต์เดียวกัน โดยใช้การอ้างอิงอ็อบเจ็กต์เพียงครั้งเดียว ตัวอย่าง −
สมมติว่าเรามีคลาส Foo ที่มีสองวิธีคือ bar และ baz
เราสร้างตัวอย่างของคลาส Foo -
foo = Foo()
โดยไม่ต้องผูกมัดวิธีการเรียกทั้ง bar และ baz บนวัตถุ foo เราทำสิ่งนี้ -
foo.bar() foo.baz()
ด้วยการผูกมัดวิธีการ เราทำสิ่งนี้ -
Chain เรียกทั้งสองวิธี bar() และ baz() บนวัตถุ foo
foo.bar().baz()
ตัวอย่าง
การโยงเมธอดอย่างง่ายสามารถนำไปใช้ใน Python ได้อย่างง่ายดาย
class Foo(object): def bar(self): print "Foo.bar called" return self def baz(self): print "Foo.baz called" return self foo = Foo() foo2 = foo.bar().baz() print " id(foo):", id(foo) print "id(foo2):", id(foo2)
ผลลัพธ์
นี่คือผลลัพธ์ของการรันโปรแกรมข้างต้น -
Foo.bar called Foo.baz called id(foo): 87108128 id(foo2): 87108128