riteshpanigrahi.hashnode.devFlyweight 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 read
riteshpanigrahi.hashnode.devSimplifying 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 read
riteshpanigrahi.hashnode.devDecorating 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 read
riteshpanigrahi.hashnode.devUnderstanding 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 read
riteshpanigrahi.hashnode.devExploring 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 read