Design Pattern Implementation Nodejs

Design Pattern Implementation Nodejs
Table of Contents

 

1. Membuat Project Baru

Buka terminal dan jalankan:

Design Pattern Observer Nodejs

 


2. Penjelasan Design Pattern “Observer”

A. Contoh Penggunaan Observer

Observer cocok digunakan pada aplikasi berita di mana user (observer) ingin mendapatkan notifikasi otomatis saat ada berita baru (subject). Ketika berita baru ditambahkan, semua user yang berlangganan akan langsung diberi tahu.

B. Langkah-langkah Implementasi Observer

  1. Subject: Objek yang diamati, menyimpan daftar observer.
  2. Observer: Objek yang menerima notifikasi dari subject.
  3. Subject akan:
    • Menyediakan metode untuk menambah/menghapus observer.
    • Memanggil method update() pada semua observer saat ada perubahan.
  4. Observer akan:
    • Mengimplementasikan method update() yang menangani notifikasi.

C. Kelebihan dan Kekurangan

Kelebihan:

  • Menghubungkan objek secara longgar (low coupling).
  • Mendukung komunikasi satu-ke-banyak secara otomatis.

Kekurangan:

  • Sulit dilacak jika terlalu banyak observer.
  • Performa bisa menurun jika observer terlalu banyak dan kompleks.

3. Implementasi Observer di Node.js

📄 observer.js

 



📄 subject.js

 



📄 concreteObserver.js

 

📄 main.js

 

✅ Penjelasan Baris Kode di main.js

 


👉 Mengimpor class Subject dan Observer konkret.

 


👉 Membuat objek subject yang diamati.

 


👉 Membuat dua observer dengan nama berbeda.

 

 


👉 Mendaftarkan observer ke subject agar mendapat notifikasi.

 


👉 Subject mengirim notifikasi ke semua observer yang sudah terdaftar.

 


👉 Menghapus observer1 dari daftar.

 

Tugas

Fitur Unsubscribe Otomatis
Tambahkan fitur agar observer bisa berhenti berlangganan sendiri setelah menerima 3 notifikasi.

Hint: Buat counter notifikasi di ConcreteObserver.

Kategori:

Tags: