Sebelumnya kita udah membahas Factory Method Design Pattern. Kalau belum baca, mending dibaca dulu biar nyambung dengan tulisan ini karena use case-nya masih sambungan dari tulisan tersebutš. Sekarang kita bahas versi upgrade-nya, yaitu Abstract Factory Design Pattern. Keduanya memang mirip, yaitu memberikan user kebebasan memilih implementasi objek apa yangā¦
Ini merupakan design pattern yang sangat populer digunakan. Software engineer yang menggunakan OOP harusnya pernah menggunakan atau setidaknya tahu tentang design pattern ini. Factory Method Design Pattern digunakan ketika ingin menggunakan implementasi objek tertentu tanpa harus tahu class-nya apa. Biasanya dengan cara tipe objek ditentukan berdasarkan inputā¦
Yang udah pernah menggunakan Clean Architecture mungkin udah familiar dengan design pattern ini, terutama ketika declare input boundary. Selain itu, ketika kita melakukan pembungkusan logic ke dalam runnable juga termasuk Command Pattern. Design pattern yang satu ini memang cukup populer di kalangan software engineer. Termasuk salah satu design pattern yangā¦
Kali ini gw membahas tentang FaƧade Design Pattern. Sebenarnya penggunaan design ini cukup umum sih. Gw rasa beberapa diantara kita udah familiar dengan Facade ketika membuat sebuah API. Bagi yang menerapkan Clean Architecture gw rasa udah sering menggunakan design pattern ini ketika membuat gateway. Tingkat kompleksitasnya juga cukup rendah, cukup mudahā¦
Bridge Design Pattern termasuk salah satu design pattern yang agak kompleks dibanding design pattern yang lain. Penggunaan design pattern ini juga tidak terlalu populer. Design pattern ini biasanya digunakan untuk memisahkan hierarki sebuah class menjadi lebih independen sehingga pengimplementasiannya bisa lebih spesifik dan fleksibel. Bridge Design Patternā¦
Template Method Design Pattern cukup sering digunakan dalam library Java seperti AbstractList, AbstractSet, dan AbstractMap. Design Pattern ini berbasis inheritance. Walaupun mungkin terdengar kurang familiar, tapi pemanfaatan design pattern ini cukup sering dipraktekkan pada beberapa kasus. Bagi yang pernah menggunakan Spring Framework juga mungkin udah familiarā¦
Penggunaan design pattern ini cukup populer. Benefit dari Singleton adalah kita tidak perlu membuat objek baru di setiap penggunaan, dari sisi performa tentu sedikit lebih cepat dan penggunaan memory jadi lebih efisien. Di lain sisi, penggunaan Singleton juga mengundang kontroversi karena global variables, anti-pattern dan menyalahi kodrat OOP. Walaupun begituā¦
Biasanya ketika membuat objek, kita tinggal menggunakan keyword 'new' yang dilanjutkan dengan nama constructor yang mau dibikin. Namun kadang ada beberapa kasus yang membuat kita ga semudah itu dalam membuat objek, seperti ketika menggunakan immutable object. Design Pattern yang satu ini menurut gw yang paling gampang dikuasai, walaupun penerapannya agak kompleksā¦
Adapter Pattern ini memungkinkan objek dengan tipe yang berbeda bentuk dapat digunakan sebagai objek lain. Objek tersebut dihandle agar compatible digunakan sebagai objek lain tanpa harus di-casting atau ditulis ulang. Penasaran kan seperti apaš? Adapter Design Pattern adalah Structural Design Pattern yang dapat membuat objek yang tipe strukturnya tidak salingā¦
Dengan Decorator Pattern kita bisa menambah behavior baru kepada objek originalnya sebanyak mungkin. Sehingga behavior-behavior tadi membentuk struktur baru berdasarkan behavior-behavior sebelumnya. Decorator Design Pattern merupakan Structural Design Pattern yang bisa menambahkan behavior baru kepada objek originalnya dengan membungkusnya ke dalam specialā¦