Design Pattern

Pattern Gang of Four dengan konteks dunia nyata, contoh kode dalam Swift, Kotlin, TypeScript, Python & Java, serta kasus penggunaan praktis untuk setiap skenario.

Creational · Mengatur cara objek dibuatStructural · Mengatur cara objek disusunBehavioral · Mengatur cara objek berkomunikasi

Creational

Mengatur cara objek dibuat

Structural

Mengatur cara objek disusun

Behavioral

Mengatur cara objek berkomunikasi
👁️ObserverBehavioral

Mendefinisikan ketergantungan one-to-many sehingga saat state satu objek berubah, semua objek yang bergantung padanya otomatis diberi tahu.

UI yang harus diperbarui saat data di ba…Sistem event di mana beberapa komponen b…
♟️StrategyBehavioral

Mendefinisikan sekumpulan algoritma yang bisa saling dipertukarkan dan memungkinkan penggantiannya saat runtime.

Beberapa algoritma terkait yang hanya be…Perilaku yang bisa ditukar: sorting, kom…
📜CommandBehavioral

Membungkus sebuah request sebagai objek, sehingga operasi bisa di-undo/redo, dimasukkan ke antrean, dan dicatat.

Fitur undo/redo (text editor, aplikasi m…Sistem berbasis transaksi yang butuh rol…
🚦StateBehavioral

Memungkinkan sebuah objek mengubah perilakunya saat state internalnya berubah, seolah-olah class-nya ikut berubah.

Perilaku objek harus berubah berdasarkan…Finite state machine: siklus hidup pesan…
⛓️Chain of ResponsibilityBehavioral

Meneruskan request melalui rantai handler; setiap handler memutuskan apakah akan menanganinya atau meneruskannya.

Lebih dari satu handler bisa memproses r…Handler yang dipakai harus ditentukan sa…
📋Template MethodBehavioral

Mendefinisikan kerangka algoritma di base class, sementara langkah-langkah tertentu diserahkan ke subclass.

Beberapa class berbagi struktur algoritm…Kode framework yang memanggil langkah bu…
🔄IteratorBehavioral

Menyediakan cara untuk mengakses elemen koleksi secara berurutan tanpa membuka representasi internalnya.

Koleksi custom yang perlu mendukung loop…Saat kamu butuh beberapa strategi traver…