TypeScriptTingkat: Lanjutan7 min

Decorators (@) & Metadata Programming

Pahami sintaks Decorator modern ECMAScript/TypeScript untuk memodifikasi perilaku class, logging otomatis, dan validasi properti secara deklaratif.

Konsep Decorator (@)

Pratinjau Terbuka

Decorator adalah fungsi khusus yang diprefiks dengan simbol @ dan ditempelkan pada deklarasi class, method, accessor, atau properti untuk menambahkan kapabilitas baru secara bersih (meta-programming).

Contoh Kode Sintaks
// Method Decorator Sederhana untuk Logging
function LogEksekusi(target: any, propertyKey: string, descriptor: PropertyDescriptor) {
  const originalMethod = descriptor.value;

  descriptor.value = function (...args: any[]) {
    console.log(`[METRIC] Memanggil fungsi ${propertyKey} dengan parameter:`, args);
    const hasil = originalMethod.apply(this, args);
    console.log(`[METRIC] Selesai dieksekusi, hasil:`, hasil);
    return hasil;
  };

  return descriptor;
}

class AkunLayanan {
  @LogEksekusi
  hitungBiaya(kuota: number): number {
    return kuota * 1500;
  }
}

Live Compiler Runner

Akses Kursus Wajib Login

Buka Akses Penuh Silabus & Praktikum

Masuk dengan akun GitHub, Google, atau Akses Cepat Developer untuk membuka seluruh materi mendalam, menjalankan compiler interaktif, mengerjakan kuis, dan menyimpan progres belajar Anda.

145+ Modul Lengkap•Tersimpan Otomatis•Sertifikat Kelulusan Resmi