Design pattern ini cukup populer digunakan. Salah satu contoh class di Java yang menggunakan Iterator Design Pattern adalah Iterator. Iterator tersebut tugasnya untuk membuat berbagai collection elemennya bisa di-iterasi satu-persatu. Jadi sebuah collection kita bungkus di suatu objek yang nantinya bisa kita modifikasi atau lintasi lewat objek tersebut melalui…
Memento secara bahasa artinya kenang-kenangan atau tandamata. Sesuai namanya, Memento itu tugasnya menyimpan “kenangan” dari state suatu objek. Jadi misalkan kita sudah sampai ke state tertentu, kita bisa kembali lagi ke “kenangan” yang pernah kita simpan. Contoh analoginya adalah pada database. Misalkan kita melakukan insertion A, B, C, dan D. Lalu kita…
Composite Design Pattern bentuknya seperti hierarki objek pada Tree Structures. Design pattern ini biasanya terdiri dari satu interface yang disebut Component yang menjadi abstraksi untuk beberapa class implementation. Implementasi dari interface Component tersebut diantaranya sebagai objek tunggal yang disebut Leaf, lalu ada implementasi lainnya sebagai objek…
Terakhir gw bikin tulisan tentang design pattern sekitar 1 tahun yang lalu, abis itu ga gw lanjutin dan mulai menulis topik lainnya. Bukannya apa-apa, tapi nyari contoh real use case yang gampang dipahami itu susah😅. Kadang contoh yang sering ditemui saat googling itu terlalu kompleks untuk dipahami, atau terlalu sederhana sehingga poinnya jadi ga dapet. Makanya…
Tadinya gw udah sempat publish tulisan ini dengan judul “Orang Minang vs Orang Padang” dan “Serba Serbi Minangkabau”. Tapi setelah di-publish gw ngerasa kurang menarik dengan tulisannya dan kepikiran buat nambahin beberapa fakta unik tentang Orang Minangkabau😅. Akhirnya gw putuskan untuk unpublished dan mengganti judul serta memodifkasi tulisannya sebelum gw…
Enum atau Enumeration adalah object khusus pada pemrograman yang berisi value constant yang bisa di-reuse di berbagai tempat. Enum atau Constant dapat membuat code jadi lebih mudah dibaca dan dimaintain. Penulisan Enum value menurut convention biasanya ditulis menggunakan format “SNAKE_UPPERCASE”. Kali ini gw akan bahas tentang apa aja manfaat menggunakan Enum…
Sebelumnya gw pernah post tentang Jebakan Boolean, kali ini yang dibahas adalah Jebakan Optional pada Java beserta tips solusi penggunaan Optional yang tepat. Ini juga pernah gw mention pada post The Verbosity. Sekarang Optional sudah menjadi standar best practice ketika melakukan return object pada public method di Java. Optional awalnya fitur yang dipopulerkan…
Di tulisan Isolation pada ACID kita membahas tentang Read Phenomena, kali ini pembahasannya tentang Update Anomaly. Read Phenomena adalah fenomena selisih pembacaan data pada suatu sesi karena ada perubahan oleh sesi lain secara bersamaan. Sedangkan Update Anomaly adalah anomaly hasil perubahan data yang dilakukan pada suatu sesi karena sesi lain juga melakukan…
Isolation adalah kemampuan database untuk menghandle transaksi yang dilakukan lebih dari satu sesi secara bersamaan. Isolation adalah bahasan paling kompleks dibanding keyword ACID lainnya. Default Isolation masing-masing database berbeda-beda, tapi kita bisa mengganti level Isolationnya pada masing-masing transaksinya. Seperti pada Java kita bisa set Transaction…
ACID adalah standar operasional transaksi pada database untuk menjamin validitas data meskipun terjadi crash atau error pada system. ACID merupakan aspek yang sangat penting pada transaksi di database untuk memastikan data yang disimpan benar, terpercaya, tanpa anomaly meskipun digunakan secara serentak atau mengalami gangguan pada system. ACID berasal dari…