51. PYTHON (Pemrograman Fungsional) – Decorator

Belajar Bahasa Python Lengkap

Decorator digunakan untuk memodifikasi sebuah fungsi menggunakan fungsi lain. Hal ini berguna ketika kita ingin menambah fungsionalitas pada sebuah fungsi tanpa memodifikasnya secara langsung.

Berikut contohnya :

def dekor(fungsi):
     def wrap():
         print("==========")
         fungsi()
         print("==========")
     
     return wrap

def fungsi_print():
     print("Hello world!")

dekorasi = dekor(fungsi_print)
dekorasi()

Jadi fungsi fungsi_print akan didekorasi menggunakan fungsi dekor. Dimana fungsi_print yang menampilakan tulisan “Hello world!” akan memiliki dekorasi berupa garis-garis yang ditambahkan menggunakan fungsi dekor. Di dalam fungsi dekor terdapat nested function yaitu wrap yang digunakan untuk hasil return dari fungsi dekor. Variabel dekorasi merupakan versi dekorasi dari fungsi_print.

==========
Hello world!
========== 

Berikut contoh dimana kita tidak perlu mendefinisikan variabel dekorasi seperti sebelumnya.

def dekor(fungsi):
     def wrap():
         print("==========")
         fungsi()
         print("==========")

     retur wrap

@dekor
def fungsi_print():
     print("Hello world!")

fungsi_print()


LANJUTKAN BACA MATERI LENGKAP


Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.