Flyweight Design Pattern Explained: How Text Editors Save MemorySuppose Flyweight Pattern does not exist! Imagine we are building a text editor application, each time the user types a character, a corresponding object is created to represent that character on the screen.This object contains information like the c...Nov 22, 2025 · 8 min readriteshpanigrahi.hashnode.dev
Simplifying Complex Systems with the Facade Design PatternImagine planning a trip by yourself – finding flights, booking hotels, sorting transportation, and planning activities. It's a lot of work. Now, think about using a travel agency. It's like a helper that takes care of everything behind the scenes. Yo...Nov 15, 2025 · 5 min readriteshpanigrahi.hashnode.dev
Decorating Your Objects: A Guide to the Decorator Design PatternImagine you're at Subway, ready to order your sandwich. You start with the basic sandwich, choosing your bread and selecting a filling – whether it's a hearty meat option or a delicious veggie alternative. Suppose you want something extra – some chee...Apr 20, 2025 · 7 min readriteshpanigrahi.hashnode.dev
Understanding the Java Memory Model and 'Happens-Before' PrincipleThe Java Memory Model (JMM) explains how different threads in a Java program can see and use shared variables. It tells us when one thread make any changes to a variable that become visible to other threads and how to properly coordinate access to th...Jun 5, 2024 · 6 min readriteshpanigrahi.hashnode.dev
Exploring the Composite Design Pattern: Simplify Object HierarchiesHello everyone, welcome to another article of the Design Pattern series and in todays article we will understand all about Composite Design Pattern. What is Composite Design Pattern? Imagine, we are designing a packaging system where we have 2 object...Mar 23, 2024 · 5 min readriteshpanigrahi.hashnode.dev