Pengenalan Dekorator
Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan Python di Coddy. Pelajaran 9 dari 64.
Dekorator adalah cara untuk mengubah atau menyempurnakan fungsi dan class tanpa mengubah kode aslinya. Dekorator menggunakan simbol @.
Berikut contoh decorator sederhana:
def my_decorator(func):
def wrapper():
print("Before function runs")
func()
print("After function runs")
return wrapperTerapkan decorator menggunakan @:
@my_decorator
def say_hello():
print("Hello!")Panggil fungsi yang diberi dekorator:
say_hello()Output:
Before function runs
Hello!
After function runs@my_decorator setara dengan menulis:
def say_hello():
print("Hello!")
say_hello = my_decorator(say_hello)Namun, sintaks @ jauh lebih rapi dan mudah dibaca.
Poin penting: Decorator membungkus fungsi untuk menambahkan fungsionalitas tambahan tanpa mengubah kode fungsi aslinya
Coba sendiri
Pelajaran ini tidak memiliki tantangan kode.
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Pemrograman Berorientasi Objek
1Dasar-Dasar OOP
File EksternalPengantar OOPclass vs objectParameter selfmethodAtributMethod Konstruktor (__init__)Rangkuman: Kalkulator Sederhana4Pewarisan
Pewarisan DasarFungsi super()Penimpaan MethodPewarisan BergandaUrutan Resolusi MethodRingkasan: Hierarki Karyawan5Polimorfisme
Meninjau Ulang Method OverridingDuck Typingclass dan method AbstrakDesain InterfaceRingkasan: Kalkulator Bentuk8Konsep OOP Lanjutan
Komposisi vs PewarisanMixinsMetode Statis dan Metode ClassDecorator ClassPengelola Konteks11Pola Desain Bagian 2
Pola PerintahPola AdapterPola DecoratorPola Template MethodPola StatePola Composite3Property class
Variabel instance vs variabel classDekorator propertyAtribut privatRangkuman: Pengelola Rekening Bank6Enkapsulasi
Anggota Public, Protected, PrivateModifier AksesPenyembunyian InformasiDecorator Property Tingkat LanjutUlasan: Sistem Catatan Siswa12Proyek: Manajemen Perpustakaan
Ikhtisar Proyekclass Buku dan PenggunaSistem PeminjamanFitur PencarianAntarmuka AdminPengujian dan IntegrasiLatihan sendiri: Compiler Python online