Gemini Nano Banana Pro - cache stampede

Mendapatkan data yang butuh komputasi yang berat atau melibatkan query yang kompleks dapat membuat system jadi lambat. Permasalahan itu bisa diatasi dengan cache agar data yang pernah didapat disimpan di memori dalam jangka waktu tertentu. Namun, saat cache expired semua request yang masuk harus melakukan komputasi lagi berbarengan sehingga bisa membuat server…

June 29th, 20266 mins read
Programming Principle, Tips & Tutorial, Java, My Views
Gemini Nano Banana Pro - server communication

Ketika membangun aplikasi yang terintegrasi dengan service lain kita perlu memilih strategi yang dilakukan untuk berkomunikasi atau bertukar pesan antar service. Biasanya pada Microservices strategi yang paling umum untuk dilakukan adalah Direct Call menggunakan HTTP. Namun, pendekatan ini belum tentu cocok untuk semua kasus. Ada beberapa pilihan strategi…

June 24th, 20269 mins read
Tips & Tutorial, Java
Gemini Nano Banana Pro - jwt

JWT (JSON Web Token) adalah standar yang digunakan untuk komunikasi antara client & server pada proses Authentication & Authorization. JWT punya 2 pilihan token. Pertama JWS (JSON Web Signature), yaitu informasi yang ada di token di-encode menggunakan Base64. Kedua JWE (JSON Web Encryption), yaitu informasi yang ada di token di-encrypt dengan algoritma tertentu…

June 23rd, 20266 mins read
Java, My Views, Tips & Tutorial
Gemini Nano Banana Pro - validation

Jika biasanya validasi input dilakukan menggunakan beberapa boilerplate if, maka di Java ada opsi agar validasi input dilakukan lewat deklarasi anotasi saja. Kita bisa menggunakan Jakarta Validation API. Ini memudahkan development karena cukup dengan anotasi doang semuanya bisa teratasi tanpa perlu repot-repot bikin logic validasi. Dengan anotasi jadi lebih…

June 22nd, 20268 mins read
Java, Database, Tips & Tutorial
Gemini Nano Banana Pro - jooq

4 tahun lalu gw bikin dua tulisan tentang cara bikin query dinamis di Java. Pertama menggunakan Spring Data JPA, kemudian menggunakan menggunakan QueryDSL. Hari ini gw bakal lanjutin tentang cara bikin query dinamis menggunakan jOOQ. Untuk Spring Data JPA dan QueryDSL gw memang pernah menggunakannya di production. Tapi untuk jOOQ ini gw cuma sebatas research aja…

June 20th, 20262 mins read
Programming Principle, Tips & Tutorial
Gemini Nano Banana Pro - screaming architecture

Screaming Architecture adalah sebuah arsitektur di mana struktur folder dan struktur aplikasi ā€œmengaumkanā€ domain beserta fitur utama bisnis tersebut🦁, bukan tentang teknologi yang dipakai. Konsepnya sederhana tapi argumennya cukup kuat. Misalkan kita membuka struktur folder aplikasi e-commerce, yang harusnya kita lihat bukanlah folder terkait teknologi yang…

June 20th, 20266 mins read
Programming Principle, Java, Tips & Tutorial
Ideogram - Domain Driven Development

Domain Driven Development (DDD) adalah sebuah filosofi pengembangan aplikasi yang berpusat pada logic bisnis yang disebut sebagai ā€œDomainā€. Filosofi ini diperkenalkan oleh Eric Evans di tahun 2003. Walaupun udah lebih dari 20 tahun yang lalu tapi filosofi ini masih tetap relevan di jaman sekarang. DDD menyelaraskan antara code dengan realita bisnis, bukan…

June 20th, 20262 mins read
Java, Tips & Tutorial, Programming Principle
Ideogram - tell dont ask

Prinsip ini diperkenalkan oleh sesepuh OOP Martin Fowler. ā€œTell, Don't Askā€ (TDA) artinya adalah kita tidak meminta data dari objek lalu kita memutuskan apa yang harus dilakukan, melainkan kita memerintah objek untuk melakukan apa yang kita inginkan. Jadi, di sini objek yang bekerja untuk kita. Prinsip ini mencegah micromanage di luar objek agar eksekusi yang…

June 18th, 202620 mins read
Tips & Tutorial, Programming Principle, Java, Spring
Gemini Nano Banana Pro - clean architecture

Clean Architecture adalah evolusi dari Onion Architecture, Hexagonal Architecture, dan Screaming Architecture. Ide ini diperkenalkan oleh Uncle Bob. Di sini modul dibagi jadi beberapa layer. Setidaknya ada 4 layer: Entities, Use Case, Interface Adapters, dan Frameworks & Drivers. Dependensi antar layer selalu mengarah ke dalam. Layer-layer tersebut tidak…

June 17th, 20264 mins read
Programming Principle
Gemini Nano Banana Pro - http request methods

HTTP Method adalah kumpulan request method untuk menjelaskan tujuan dari pengiriman request dan apa yang diharapkan setelah request berhasil. Yang paling umum biasanya GET & POST. Padahal selain itu ada beberapa method lainnya yang mungkin masih jarang terdengar. HTTP Method memiliki karakteristiknya masing-masing yang digunakan untuk berbagai kasus tertentu…

Ā© 2026 Ā· Ferry Suhandri